gpt4 book ai didi

objective-c - Interface Builder 不显示 IBActions

转载 作者:行者123 更新时间:2023-12-03 17:02:18 24 4
gpt4 key购买 nike

问题

我有一个类 (AppController),它有两个导出和两个操作。
Interface Builder 选取了两个 socket 并连接良好。
但是,当在 Interface Builder 中按住 Ctrl 键并单击 AppController 对象时,这两个操作不会出现在出现的 HUD 窗口中,也不会出现在 Library->Classes->AppController->Actions 中。

AppController.h

#import <Cocoa/Cocoa.h>


@interface AppController : NSObject {
IBOutlet NSWindow *newDownloadSheet;
IBOutlet NSBox *downloadsBox;
NSString *sourceFileURL;
NSString *destinationFileName;
NSMutableArray *downloads;
}

- (IBAction)newDocument; // New Download - to respond to File->New, delegates to showNewDownloadSheet:
- (IBAction)showNewDownloadSheet (id)sender;

@end

在 .m 文件中定义了它们(尽管 AFAIK Interface Builder 甚至不查看 .m 文件)。另外,我的代码编译得很好(没有警告)并且可以“运行”,它只是无法执行任何操作,因为我无法连接 IBActions。

系统信息

Mac OS X 10.6 – 是的,我知道它很旧。我的电脑也是这样,所以无法升级。
XCode 3.2.6
界面生成器3.2.6

为什么这不是重复的

我可以找到关于同一问题的另外两个问题,但没有一个答案对我有用。

  1. Why doesn't IB see my IBAction?答案建议
    1. 手动重新加载相关类文件(文件->读取类文件...)。试过了,没用。
    2. 添加...:(id)发件人;。正如你所看到的,我的一个操作有这个,一个没有,但都没有出现。
    3. 正确设置文件所有者。这与我的问题无关,因为我不尝试连接到文件的所有者对象,而是连接到单独添加的对象,其标识正确设置为 AppController。另外,奥特莱斯确实出现了。
  2. IBAction doesn't show up in interface builder唯一的答案与1.2相同。

最佳答案

- (IBAction)showNewDownloadSheet (id)sender;
不正确,应该是
- (IBAction)showNewDownloadSheet: (id)sender;

注意缺少“:”。

关于objective-c - Interface Builder 不显示 IBActions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29317721/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com