gpt4 book ai didi

xcode - NSToolbar特殊区域

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

我喜欢尝试完全接管 NSToolbar 所在的区域,这样我就可以放置我自己的自定义控件、 View 和背景。使用该区域的优点是:

  • 所有滑动面板都会显示在工具栏区域下方,而不仅仅是标题栏。
  • 在 Lion 中,当鼠标位于屏幕顶部时,工具栏区域会与菜单栏一起下降。

我尝试过使用无边框窗口,并在其中实现我自己的自定义 View ,但不幸的是我失去了上述优点,并且还有一些其他小问题。

我当前的方法是将未记录的方法“_toolbarView”与 NSToolbar 一起使用,并将我的自定义 View 添加到其 subview 中。这很好用,因为我可以关闭工具栏自定义。不幸的是,工具栏的大小是用该工具栏中的项目初始化的。有谁知道我是否可以在不添加假 ToolbarItem 的情况下更改工具栏的大小?

也许还有一种我目前不知道的更好的方法。感谢您的建议和意见。

最佳答案

无需使用任何未记录的 API。只需创建一个具有自定义 View 的工具栏项即可:

- (NSToolbarItem *)toolbar:(NSToolbar *)toolbar itemForItemIdentifier:(NSString *)itemIdentifier willBeInsertedIntoToolbar:(BOOL)flag {
NSToolbarItem *item = [[[NSToolbarItem alloc] initWithItemIdentifier:itemIdentifier] autorelease];

[item setView:myCustomToolbarView];

}

您可以使用项目的 minSizemaxSize 属性(例如,在 NSWindowDelegate-windowDidResize 中)控制自定义工具栏的大小:)。

记住还要更新工具栏显示模式,使其不显示项目标签:

[toolbar setDisplayMode: NSToolbarDisplayModeIconOnly];

关于xcode - NSToolbar特殊区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7058046/

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