macos - 在 Qt 中创建胶囊式工具栏控件

标签 macos qt user-interface toolbar

什么是最好的渲染方式capsule-style toolbar controls (包括按钮下方的标签文本)在 Qt 应用程序中?

至于渲染按钮,我想尽可能多地利用 Mac OS 提供的内容。 (我不是 Mac 开发人员,所以不知道它是否有用于此的 API。)也就是说,我知道我可以自己绘制它们,使用边框图像的样式表,猜测字体,然后全部设置在布局中,但有没有更好的方法来确保在 Mac 更新她的“外观和感觉”时呈现一致?我在 Qt 中使用 C++。

我不讨厌使用 Q_WS_MAC 来获得特定于平台的渲染的想法,但是 Qt 已经有什么了吗?你知道,一个 setCapsuleStyle(true)某处的方法? :)

感谢您的任何建议。

最佳答案

qt-labs 存储库中有一个分段按钮示例,在 KDE 上看起来不错。它有相当数量的 #ifdef Q_WS_MAC代码,但我不知道它在 Mac 上的呈现效果如何。你可以找到它here .

如果您专门针对 Mac,则可以使用 QMacCocoaViewContainer呈现 native 分段按钮。它的学习曲线非常陡峭,因此您可能会发现这篇关于 Mac 小部件的 Qt Labs 博客文章很有趣:Mac widget style addons .作者提供了三个 Mac 风格的小部件:QtCocoaPushButton、QtCocoaComboBox 和 QtCocoaSegmentedButton。

关于macos - 在 Qt 中创建胶囊式工具栏控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3610234/

相关文章:

python - 如何使用模型/ View / Controller 方法制作 GUI?

java - JAVA执行Unix系统命令问题

macos - 如何控制 "Prevent App Nap"在应用程序 "Get Info"中显示?

ruby-on-rails - ruby 存储在 mac 上的什么位置?

android - Android 中的样式层次结构 - 重要性顺序是什么?

c++ - 强制 WM_NCHITTEST 返回 HTCAPTION,带有自定义游标..?

java - Oracle SQL Developer 在尝试查看表时没有响应(或建议使用 Oracle Mac 客户端)

multithreading - 在非 GUI 线程中创建 QWidget

php - Qt 从数据库获取重音

c++ - 与排序模型一起使用时的 Qt TreeView 问题