我正在制作Mac application的插件。我希望该插件易于使用,所以我想'附加' UI元素到应用程序的窗口。遗憾的是,该应用程序没有允许本机功能的API,所以我必须自己开发一种技术。
传统上在Windows操作系统上,我会使用SetParent()
和包含控件的无边框窗口。但是在Mac上我明白这样的功能不存在。
然而,这让我陷入了两难境地。有没有人知道我可以用哪种方法来实现这个目标呢?
答案 0 :(得分:0)
您可以向插件添加一个需要插入目标窗口的函数,然后可以使用该插件将对象添加到输入窗口,例如。
- (void)addObjectToWindow:(NSWindow *)theWindow {
if (!theWindow) {return;} // Exits if the window is nil
NSButton *addButton = [[NSButton alloc] initWithFrame:NSMakeRect(10, 10, 30, 100)]; // modify the NSMakeRect numbers to change the size and position of the button
[addButton setTitle:@"Button Title"]; // Sets the button text
[[theWindow contentView] addSubview:addButton]; // Adds the button to the Windows view
}
多数民众赞成:D,这只有在应用程序将此功能发送到插件时才会起作用。
希望这有助于:)