c++ - 在没有 QtDesigner 的情况下在 Qt 中自定义 QDockWidget

标签 c++ qt user-interface customizing qdockwidget

(抱歉我的英语不好,但我会尽力而为)

我目前尝试自定义几个 QDockWidgets 的样式。我通过 Qt Documentation -> Style Sheet 找到的唯一解决方案正在通过右键单击鼠标-> 设置样式表和有点硬编码(看起来类似于 css)为 QtDesignerView 中的对象设置样式表。 遗憾的是,我不使用 QtDesigner,而是在 QtCreator 的 EditorView 中编写图形代码。

我现在的问题 - 是否可以通过比普通编辑器更好的自定义小部件

widget.setObjectName("widget")

然后像这样通过构造函数设置样式表:

this->setStyleSheet("QDockWidget#widget{ background-color: red;.......}");

这适用于简短的按钮,例如但是将十几行作为一个字符串放在一起可能不是最好的解决方案,不是吗? 我会很高兴得到一些提示,因为我在网上找不到太多相关信息,但我的 cpp/Qt 知识还不是最好的 :(

谢谢

最佳答案

这可能不是最好的解决方案,但我可能会按照以下思路做一些事情:

  • 在 .css 文件中创建所需的样式表
  • 子类 QDockWidget
  • 添加使用QFile 加载/解析.css 文件并设置样式等的方法
  • 然后我可能会喜欢并用 QStyle 和其他相关类做一些事情

关于c++ - 在没有 QtDesigner 的情况下在 Qt 中自定义 QDockWidget,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6943955/

相关文章:

c++ - 如何声明省略号定义的 va_list 未使用

python - 当 PyQt4 中的 QRunners 的 QThreadPool 执行完成时得到通知

qt - QTreeView&QAbstractItemModel&insertRow

git - 在 GUI ($git gui) 中单击存储库/压缩数据库时执行的 git 命令到底是什么

java - GridBagLayout 网格宽度

user-interface - 是否基于Wix中的实时文本控件值启用或禁用下一个按钮?

c++ - 为什么 double 可转换为看似任何原始类型的 const 引用?

c++ - 为什么文件扩展名对编译有影响?

c++ - DSL 的嵌入式脚本引擎

c++ - Unicode 文件名测试平台