我在Linux和Windows上使用QT 4.6,在Linux上,它坚持通过qscrollpane.h包含我的QScrollPane
App.pro:
HEADERS += widgets/QScrollPane.h
Run Code Online (Sandbox Code Playgroud)
来自mainform.ui的部分
Run Code Online (Sandbox Code Playgroud)<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>
Run Code Online (Sandbox Code Playgroud)
这在Windows或Mac上并不是什么大不了的事,但在Linux上它是彻头彻尾的烦人.我可以创建一个符号链接来解决问题,但我想找到根本原因.
问候,-Chris
您需要提供有关自定义窗口小部件的更多信息.将以下内容添加到mainform.ui:
<customwidgets>
<customwidget>
<class>QScrollPane</class>
<extends>QWidget or whatever class is QScrollPane parent</extends>
<header>QScrollPane.h</header>
</customwidget>
</customwidgets>
Run Code Online (Sandbox Code Playgroud)
应该做的伎俩(免责声明:仅在Windows Qt 4.6.1上测试).
我更喜欢在我的课程中使用所有小写文件名 - 我总是100%确定我不会被一些非100%的跨平台工具搞砸.