问题标签 [uic]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
qt - 如何使用 setupUi 或 uic 输出来创建没有父小部件的独立布局?
uic 从.ui
文件生成的输出始终将布局和子小部件安装在现有小部件上。当您打算直接在 a 上添加布局/子项时,这非常有用widget
:
唉,有时干预小部件是不必要的。首先,小部件上的布局具有非零边距,因此如果您打算将 的内容插入Ui::Form
到布局中,则必须重置边距:
此外,在这种情况下,干预小部件是完全不需要的。假设我们setupUi
不需要顶级小部件(从 Qt 5.7 开始,它在传递 nullptr 时崩溃)。我们可以按如下方式使用它:
我已经检查过uic
了,它不支持在没有顶级小部件的情况下发出代码。确实,所需的补丁是微不足道的。
然而,有没有办法在不修补 Qt的情况下实现nullptr
-accepting的效果?setupUi
免得有人认为这是一个虚构的问题:这个问题部分是由 YUView 的这段代码提示的。在那里,parentWidget
传递给setupUi
已经有一个布局,目的是在完成后将表单的布局添加到另一个布局setupUi
。QWidget::setLayout
从内部调用setupUi
拒绝设置新布局,发出警告,尽管如此,事情还是发生了。代码很脆弱,因为它依赖于 Qt 代码以正确的方式破坏以产生所需的结果。
python - 自定义 Qt 设计器小部件的代码?
我需要在使用 Qt 设计器创建的表单中向图形小部件添加一些功能。
例如,我通常会做这样的事情:
但在这种情况下,图形视图是我在 Qt Designer 中创建的窗口的一部分。我知道您可以在 Qt 设计器中使用“提升到”功能,但我不知道如何在代码中使用它,特别是考虑到我使用这种方法来使用 Qt 设计器窗口:
那么,当我使用 Qt Designer 时,我将如何在我的窗口中自定义图形视图的代码呢?
python - 如何使用 uic 模块创建一个打开另一个窗口的窗口?Qt-Designer 和 Python
我在尝试使用 PyQt5 和 QT 设计器开发 GUI 时遇到问题。
我想使用该uic
模块,我有一个.ui
名为 的文件registro.ui
,还有另一个login.ui
,因为我可以login.ui
通过registry.ui
单击按钮调用registro
我也分别有Login.py
,Registro.py
文件
我的意图是点击注册按钮,然后打开注册窗口
只使用uic.loadUI()
方法?
在这里我展示我的代码
班级登录
login.py
类注册:
Registro.py
c++ - 在 Qt 中使用 CMake:位置 ui_*.h 无法被 Qt Creator 识别
我尝试使用Qt Creator来管理用户界面文件*.ui
:
mainwindow.cpp
:
mainwindow.hpp
:
CMakeLists.txt
:
当我将光标放在#include "ui_mainwindow.h"
文件名上并 pushF2时,我收到以下错误消息:
我已经调查了这个问题:它来自不同的位置,在文件中提到D:/Projects/build/proj/Debug/src/gui/CMakeFiles/gui.dir/CXX.includecache
:
这是两个连续的行,仅包含ui_mainwindow.h
整个文件中的子字符串。第二行包含错误的位置,即使我添加target_include_directories(${PROJECT_NAME} PRIVATE "${PROJECT_BINARY_DIR}/gui_autogen/include")
到CMakeLists.txt
,那么cmake
任何一种方式都无法生成正确的缓存文件。
对此有什么解决方法?我想我可以在CMake发行版的Qt子系统中编辑(修补)一些*.cmake
文件。我几乎可以肯定这与指令和其他东西密切相关。CMAKE_AUTOMOC
额外的:
主要问题是我无法从表单编辑器的Go to slot上下文菜单项创建插槽以从Qt Cretator自动生成插槽。
qt - cmake 2.8.12.2 AUTOUIC 不工作:错误或缺少功能?
我正在用 CMake 构建一个 Qt 项目。在 macOS 或 Windows 上使用 cmake-3.8.2 一切正常。在我有 cmake-2.8.12.2 的 Ubuntu 14 上,运行 moc,但未运行 uic。在CMakeLists.txt
我有:
并且 .ui 文件没有在任何地方指定(但具有相同的类,所以我有 SDFDialog.h、SDFDialog.cpp、SDFDialog.ui)
在带有 cmake-2.8.12.2 的 Ubuntu 14 上,这是输出:
而在具有 cmake-3.8.2 uic 的 macOS 上正确运行:
这是错误还是缺少功能?如果缺少功能,最低要求的 cmake 版本是多少?是否有一些解决方法可以让 uic 在 cmake-2.8.12.2 上运行而无需过多更改CMakeLists.txt ?
c++ - 如何在 Qt Designer UI 文件中清除 QMainWindow 的几何标记
Qt Designer 添加了一个几何标记,其中包含以绝对单位(像素)表示的小部件的默认大小。
这真的很烦人,因为如果你ui
在 4k 显示器上编辑一个文件,你所有的ui
s 将(默认情况下)在较低 DPI 系统上显示大量空白。
如果我手动删除此标签,我的窗口在首次显示时具有预期的大小,但每次ui
在 Qt Designer 中打开它们时手动编辑每个文件都会感觉不对。
我正在使用 Qt 5.9。
阻止 Qt Designer 添加此 XML 标记的典型方法是什么?
在example.ui
qt - CMake Qt UIC 失败
我目前正在将我的项目从 QMake 移动到 CMake,并且我遇到了 Qt UIC 的问题,它试图处理一个不存在的 ui 文件,而不是我希望他处理的实际文件。
我有以下架构
这是我的cmake
我有以下错误:
这个错误是完全合乎逻辑的,因为我的源文件夹不包含 ui 文件。我试图包装 ui 而不是使用 autouic,但它也不起作用。
qt4 - Qt5:基于文本 ID 的翻译。将自定义参数添加到 uic
我在我的项目中使用 Qt 5.9,我必须使用基于 ID 的翻译。我的问题是,我无法更改 uic 可执行文件的参数。qmake 变量“QMAKE_UIC”已在 Qt 5 中删除。
有谁知道,我如何将参数“-tr qtTrId”添加到 uic 命令,以便我能够将基于 ID 的翻译与 .ui 文件一起使用?还是有另一种方法告诉 qmake 使用基于 ID 的翻译?
感谢你们
cross-compiling - 我们如何交叉编译 qmake?
qt5(5.9.2)交叉编译时,会为宿主机生成qmake/moc/rcc/uic工具。是否可以为目标设备生成(交叉编译)它们?
谢谢。