Qt常用控件\机制
发布日期:2021-05-15 01:18:36 浏览次数:19 分类:精选文章

本文共 1468 字,大约阅读时间需要 4 分钟。

改进后的内容如下:

以下是基于Qt的.creator展示了一些常用控件及技术内容,供开发者参考。

1. Radiobutton

QRadioButton的AutoExclusive属性(默认勾选)能实现单选功能,可以通过SetChecked方法手动控制。

2. 套件

QWidget是基本容器,常用为布局容纳其他控件。

3. 容器类

  • QStackWidget:用于管理显示 widget。
  • QWidget:基础组件,支持各种布局和添加子控件。
  • QFrame:带边框的坐标系组件。
  • ToolBox:呈卡包式的目录容器,适合展示按钮组合。

4. 编辑类

  • QComboBox:下拉选择框,支持自定义插件。
  • QLineEdit:文本输入框,可以限制输入规则。
  • QTextEdit:多行文本输入,适用于编辑器需求。

5. 显示类

  • QLabel:静态文本显示,常用于提示信息。
  • QLCDNumber:显示数字,适合实时显示数据。
  • QProgressBar:进度条,用于显示操作进度。

布局与布局属性

  • 水平布局:QHBoxLayout
  • 垂直布局:QVBoxLayout
  • 网格布局:QFormLayout
  • 具体布局属性:比如大小、对齐方式、最大最小值等
  • 规则:如Fixed(固定)、Expanding(扩展)、Font(字体大小)等
  • 容器类型:如QScrollArea(可滚动区域)
  • 弹性布局:使用QSpacerItem实现可调整空间。
  • 自定义控件

    基于QWidget的控件具备灵活性,需在.ui中继承并设置完成度。

    常用事件处理

  • app.exec():阻塞主线程,等待一切事件完成。
  • eventFilter():在传播过程中处理事件,适合全局事件处理。
  • event():每个控件自带,通过重写编写处理逻辑。
  • 绘制窗口图像

    超出第一次绘制的需求,主要由paintEvent驱动,若需要频繁更新可调用update()或repaint()。

    keyPressEvent限制

    对于TextEdit的输入限制可用KeyPressEvent处理,注意先focus()。

    正则表达式验证

    支持常用库如QRegExpValidator,适用于各种输入校验。

    文件与QPainter

    文件路径获取

    使用QFileDialog的方法,示例:getOpenFileName(this, "选择文件", "../文件路径").

    QPaint chiffre使用

    -QRSuper大像管理.

    • QPen和QBrush用于线条样式.
    • 常用方法:setpen、setbrush、setstyle、setcolor。

    系统相关

    • 指令:connect carrera, 定义连接方式,默认为非阻塞直接方式。
    • 队列方式:适合多线程环境,强制同步。
    • 阻塞方式:可确保远程线程安全。

    多线程开发

    • 类继承自QObject.
    • 信号机制驱动线程操作,避免死锁。
    • 使用moveToThread和start()控制子线程。

    数据库开发

    默认使用数据库类型不同,配置需注意差异. QMYSQL常用。

    操作示例:

    • 建表:create table student(id INT PRIMARY KEY AUTO_INCREMENT,...).
    • 插入数据:insert into student values(...)
    • 查询操作:逐行处理或批量。
    • 事务管理:确保数据完整性。

    XML处理

    使用QDomDocument管理文档,创建节点和属性,读写操作。

    通过以上内容,可以根据实际项目需求灵活进行配置和使用。

    上一篇:Linux&QT下TCP\UDP通讯过程
    下一篇:树型结构

    发表评论

    最新留言

    哈哈,博客排版真的漂亮呢~
    [***.90.31.176]2025年05月03日 09时13分39秒