2010-04-10 66 views
1

我认为这是一个非常简单的问题,但我是编程新手,所以我可能会以错误的方式解决它。在NSView中重置图像

我对Objective-C写作终端应用程序有一个基本的了解,并且正在自学如何使用Cocoa GUI。

我知道如何使用IBOutletIBAction将简单的按钮连接到一个方法,该方法将重复发送随机数到文本字段。

我了解如何添加NSView文件,将其连接到界面构建器中的自定义视图,并在应用程序启动时通过视图中的随机点绘制路径。

(我一直把这个代码放在创建文件时声明的- (void)drawRect:(NSRect)dirtyRect方法中)。

我似乎无法弄清楚的是如何将一个按钮连接到一个动作,然后“刷新”视图 - 在这种情况下,用另一组与路径相连的随机点重新填充它。看文档,我认为我应该以某种方式使用

– (void) setNeedsDisplay(BOOL)flag 

但我没有尝试到目前为止工作。请告诉我,我在这里错过了什么?

+0

哇!多么书信的海洋......想象一下苹果公司的文档书写方式: - /你可以给你的空间,缩进,风格等写作,以便更好,只是读我们所有人?泰! – balexandre 2010-04-10 00:48:05

+0

对不起!希望这可以更容易阅读。 – Josan 2010-04-10 03:58:05

回答

1

事情是这样的:

- (IBAction)refreshButtonAction:(id)sender 
{ 
    [theView setNeedsDisplay:YES]; 
} 

您的按钮连接到这个动作。 “theView”是对您的自定义NSView的引用。

+0

谢谢!我曾尝试类似的东西,但我没有在AppController中声明我的自定义NSView作为实例变量。然后我尝试将按钮添加到NSView中,并发送[self setNeedsDisplay:YES];然后发送 [self setNeedsDisplay:YES]; 傻新手:) – Josan 2010-04-10 13:32:23