如何在NSWindow上制作按钮,同时将一张纸放在它上面

uli*_*ess 5 cocoa themes nsview appkit nswindow

我创建了一个自定义(主题)NSWindow,创建一个无边框窗口,然后在内容视图中重新创建窗口边框/背景的所有元素.我使用-standardWindowButton:forStyleMask:在我自己的假标题栏上创建了窗口小部件(关闭框,缩放框,最小化框).

麻烦的是,当一张工作表出现在我的自定义窗口之上时(例如"保存更改...",这些按钮不会收到点击.

有谁知道我怎么告诉NSWindow不要拦截我的最小化框中的点击?它适用于标准的NSWindow.当工作表启动时,我仍然可以将它们都发送到扩展坞,或者将窗口缩小.

uli*_*ess 0

我想内容视图中可能有特殊的代码,在工作表打开时忽略子视图中的点击。但似乎 -hitTest:在内容视图上被调用并返回最小化小部件,但小部件的操作永远不会被触发

我想我可以替换内容视图并在内容视图的 hitTest 中执行操作(如果它是最小化小部件)...但这看起来有点难看。