如何在Qt中安装自定义小部件
How to install a custom widget in Qt?
我已经扩展了QListView来覆盖它的鼠标事件,并且我希望使该扩展作为Qt Creator可视化设计小部件框中的小部件可用。
我遵循构建自定义小部件的模拟时钟示例。我成功地构建了它,没有出错。但是我怎么安装它呢?我是否添加构建步骤并将"install"附加到make命令?
Qt文档只是提到,比如,哦,你可以安装它或安装,没有清楚地解释如何安装自定义小部件。我如何做一个"make install"在项目构建
在。net中,也就是visual studio窗口窗体,我所要做的就是在我的项目中包含这个小部件。
我必须手动复制。so或。dll文件到一个特定的目录?
有人能给我一个简洁的离散清晰的解释我需要做什么来获得自定义小部件出现在我的Qt Creator小部件框?我不是在问如何编写代码和配置来创建自定义小部件。我已经有了一个自定义小部件。我只是想知道下一步该怎么做。
我正在使用Ubuntu,所以不要沉迷于解释为什么/如何在Windows上重新构建Creator。
有一个更简单的方法。只需在设计器中放置一个普通的QListView,右键单击,然后"提升到"。在这里,为您的扩展小部件输入一个类名。
要使用小部件,您只需要将其模块包含到项目中。要在设计器中查看widget,您需要为qt设计器编写插件。
我使用cmake和linux,但我想这对其他设置也是类似的。在CMakeLists.txt我有:
ADD_LIBRARY(widgets_plugin SHARED
foo.cpp
)
SET_TARGET_PROPERTIES(widgets_plugin PROPERTIES COMPILE_FLAGS "${QT_DEFINITIONS} -DQDESIGNER_EXPORT_WIDGETS -DQT_PLUGIN -DQT_NO_DEBUG -DQT_SHARED")
TARGET_LINK_LIBRARIES(widgets_plugin ${QT_LIBRARIES})
IF (NOT WIN32)
ADD_CUSTOM_COMMAND(TARGET widgets_plugin POST_BUILD
COMMAND rm -fr ${CMAKE_CURRENT_BINARY_DIR}/designer
COMMAND mkdir ${CMAKE_CURRENT_BINARY_DIR}/designer
COMMAND cp ${CMAKE_CURRENT_BINARY_DIR}/libwidgets_plugin.so ${CMAKE_CURRENT_BINARY_DIR}/designer/
)
ENDIF (NOT WIN32)
之后需要定义环境变量
QT_PLUGIN_PATH="path/to/you/plugin"
并运行qt designer,让它看到这个变量。
我记得qt designer在非windows机器上有一个奇怪的行为:它不看QT_PLUGIN_PATH,而是使用$QT_PLUGIN_PATH/designer,而在windows上它看$QT_PLUGIN_PATH
- QtDesigner自定义小部件
- 如何使用MSVC 2019创建和使用Qt 5.14.0自定义小工具插件
- 如何使自定义小部件中的子小部件的信号可连接?
- 带有自定义小部件的 QListWidget - 不触发项目点击信号
- Qt自定义小部件外观在设置样式表后没有变化
- 在使用Qt Designer Form Classes扩展我自己的自定义小部件时防止重复的自动连接
- Qt:自定义小部件的多个布局
- QT自定义小部件无法找到对象文件
- Qt在QTableView中设置自定义小部件
- QT设计器中的自定义小部件在框架中具有预先存在的布局
- 如何用自定义小部件替换QListWidget的图标?
- QListWidget通过setItemWidget使用自定义小部件集进行拖放
- QT自定义小部件无法构建
- QUiLoader:使用自定义小部件加载 .ui 文件的要求
- QT创建者:如何为自定义小部件生成库和测试可执行文件
- 自定义小部件中的Qt和死键
- QList 作为 qt 设计器自定义小部件中的一个属性
- Qt设计器无法加载我的自定义小部件插件
- 如何将自定义小部件添加为工具按钮的弹出菜单
- 将自定义小部件添加为 QTableWidget HorizontalHeader