当前位置: 首页 > web >正文

Qt中的UIC

      Qt中的UIC(User Interface Compiler, 用户界面编译器):读取由Qt Widgets Designer生成的XML格式(.ui)文件并创建相应的C++头文件或Python源文件。如将mainwindow.ui文件生成ui_mainwindow.h。

      uic.exe位置在6.8.0\msvc2019_64\bin ,其支持的输入参数如下所示:

      mainwindow.ui文件内容示例如下:在vs2022中此文件可以直接使用Qt Creator打开

      生成ui_mainwindow.h文件内容示例如下:

      Qt Widgets Designer UI文件:以XML格式表示表单的部件树(represent the widget tree of the form in XML format)。表单可以进行以下处理:

      在编译时,表单被转换为可以编译的C++代码。

      在运行时,表单由QUiLoader类处理,该类在解析XML文件的同时动态构建部件树。

      编译时表单处理

      你可以使用Qt Widgets Designer创建用户界面组件,并在构建应用程序时使用Qt集成的构建工具qmake和uic为这些组件生成代码。生成的代码包含表单的用户界面对象。它是一个C++结构体,包含

      (1).指向表单的部件、布局、布局项、按钮组(form's widgets, layouts, layout items, button groups, and actions)的指针。

      (2).一个名为setupUi()的成员函数,用于在父部件上构建部件树。

      (3).一个名为retranslateUi()的成员函数,用于处理表单字符串属性的翻译。

      生成的代码可以包含在你的应用程序中并直接使用。或者,你可以使用它来扩展标准部件的子类。

      你可以在应用程序中使用编译时处理的表单,方法如下:

      (1).直接方法:构建一个部件作为组件的占位符,并在其中设置用户界面。

      (2).单继承方法:继承表单基类(例如QWidget或QDialog),并包含表单用户界面对象的私有实例。

      (3).多继承方法:继承表单基类和表单用户界面对象。这样,表单中定义的部件就可以在子类的范围内直接使用。

      运行时表单处理:可以通过使用QtUiTools模块来实现,该模块提供了QUiLoader类来处理使用Qt Widgets Designer创建的表单。

      自动连接:编译时或运行时表单定义的信号和槽连接可以手动或自动设置,使用QMetaObject在信号和适当命名的槽之间建立连接的功能。

      注:以上整理的内容主要来自于Qt官方文档

      GitHub:https://github.com/fengbingchun/Qt_Test

http://www.xdnf.cn/news/3997.html

相关文章:

  • Amazon Bedrock Converse API:开启对话式AI新体验
  • Qt开发:容器组控件的介绍和使用
  • 20、数据可视化:魔镜报表——React 19 图表集成
  • 408考研逐题详解:2009年第8题
  • Java后端程序员学习前端之CSS
  • Python matplotlib 成功使用SimHei 中文字体
  • 详解RabbitMQ工作模式之发布订阅模式
  • 基于C++实现的深度学习(cnn/svm)分类器Demo
  • Baklib知识中台:智能服务架构新实践
  • 【算法学习】递归、搜索与回溯算法(一)
  • python函数复习(形参实参,收集参数,关键字参数)
  • uniapp中用canvas绘制简单柱形图,小容量,不用插件——简单使用canvas
  • QT 在圆的边界画出圆
  • IP属地是我的定位吗?——解析两者区别
  • Python异步编程入门:从同步到异步的思维转变
  • VBA信息获取与处理专题五:VBA利用CDO发送电子邮件
  • 【外围电路】按键电路设计外接信号输入设计
  • Go小技巧易错点100例(二十九)
  • rollout 是什么:机器学习(强化学习)领域
  • 【Vue】Vue3源码解析与实现原理
  • 关于 dex2oat 以及 vdex、cdex、dex 格式转换
  • VLA算法总结对比——RT1 / RT2 / Pi0 / Octo/ RDT / OpenVLA
  • 钩子函数和参数:Vue组件生命周期中的自定义逻辑
  • 2.3 向量组
  • Linux电源管理(6)_Generic PM之挂起功能
  • Ubuntu K8S(1.28.2) 节点/etc/kubernetes/manifests 不存在
  • n8n工作流自动化平台:生成图文并茂的分析报告之Merge节点详细说明
  • labelimg快捷键
  • DXFViewer进行中 : ->封装OpenGL -> 解析DXF直线
  • SpringMVC框架详解与实践指南