QT qmake 小写我的自定义小部件名称

Posted

技术标签:

【中文标题】QT qmake 小写我的自定义小部件名称【英文标题】:QT qmake lowercases my custom widget names 【发布时间】:2010-05-05 15:27:09 【问题描述】:

我在 Linux 和 Windows 上使用 QT 4.6,在 Linux 上,它坚持通过 qscrollpane.h 包含我的 QScrollPane

App.pro:

HEADERS += widgets/QScrollPane.h 

mainform.ui 中的部分

<widget class="QScrollPane" name="ListView">
 <property name="geometry">
  <rect>
   <x>0</x>
   <y>0</y>
   <width>500</width>
   <height>490</height>
  </rect>
 </property>
</widget>

ui_mainform.h 文件:

 #include <QtGui/QStatusBar>
 #include <QtGui/QTabWidget>
 #include <QtGui/QWidget>
 #include <qscrollpane.h>

这在 Windows 或 Mac 上没什么大不了的,但在 Linux 上却很烦人。我可以创建一个符号链接来解决问题,但我想找到根本原因。

问候, -克里斯

【问题讨论】:

【参考方案1】:

您需要提供有关您的自定义小部件的更多信息。将以下内容添加到您的 mainform.ui:

<customwidgets>
 <customwidget>
  <class>QScrollPane</class>
  <extends>QWidget or whatever class is QScrollPane parent</extends>
  <header>QScrollPane.h</header>
 </customwidget>
</customwidgets>

应该可以解决问题(免责声明:仅在 Windows Qt 4.6.1 上测试过)。

我更喜欢在我的课程中使用所有小写的文件名 - 我总是 100% 确定我不会被一些非 100% 的跨平台工具搞砸。

【讨论】:

关于小写文件名的好建议。我正在考虑。

以上是关于QT qmake 小写我的自定义小部件名称的主要内容,如果未能解决你的问题,请参考以下文章

Qt:QScrollArea 中的自定义小部件

Qt 中自定义小部件的自定义样式

QtDesigner 中的自定义 qt 小部件

使用 PyQt5 在 Qt Designer 中的自定义(升级)小部件中获取另一个小部件的当前值

Qt:如何制作像 QTextField 一样对齐的自定义小部件

Qt:如何将类连接到自定义 Qt 设计器小部件