Sam*_*uel 1 cocoa drawing action button
Hellow stackoverflow人,我对Cocoa很新.我有XCode 3.1
情况:我有一个NSObject子类:( AppController)带有一个动作,链接到一个按钮.比我有一个自定义视图,连接到我的NSView子类(AppView),在drawRect命令中绘制一个矩形(所有这些东西都有效),我在AppView.ma函数中 - (void)drawIt {..}绘制矩形.现在我用[self drawIt]在 - (void)drawRect ...中调用它.这也有效.
我现在要做的是在单击按钮时调用drawIt.(在AppController.m中,Action - (IBAction)...由于按钮而被调用Click)
我希望你能帮助我,我是stackoverflow的新手,所以我不知道我应该通过这里的所有代码,我可以,但也许它更容易阅读像这样
您应该阅读Cocoa Drawing Guide概念材料.-drawRect:当系统认为有必要时,系统会询问您的视图.在这方面,您可以随时要求您提出自己的观点.因此,您必须从"绘制当前状态"的角度来考虑这一点.
你或许应该这样做(在这种基本情况)也许是给您的自定义查看布尔属性"drawIt",让您的按钮操作切换此视图上的实例.这样if (self.drawIt == YES),您可以调用矩形绘图代码.
在-drawRect:调用时你应该总是做一些事情来"清除"视图(比如用白色填充整个边界),然后只有在满足条件时才绘制条件的东西.
例:
- (void)drawRect:(NSRect)aRect
{
// Clean up background (we ignore "aRect", drawing entire view at once)
[[NSColor whiteColor] set];
NSRectFill([self bounds]);
// Do we want to draw our magic rect?
if ([self drawMagicRect])
{
[[NSColor redColor] set];
NSRectFill([self magicRect]);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13469 次 |
| 最近记录: |