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

QT 基础知识点

1.基础窗口类QMainWindow qDialog Qwidget

随项目一起创建的窗口基类有三个可选QMainWindow qDialog Qwidget

1.1 Qwidget

是所有窗口的基类,只要是他的子类,或子类的子类,都具有他的属性。

右键项目 Add New -> Qt qt设计师界面类,选择Widget, 写个名字,就可以在项目中添加一个基于窗口的类,此时就多出了ui文件。

如上图就是刚新加的窗口,自动添加的代码如下

#ifndef TESTWIDGET_H
#define TESTWIDGET_H

#include <QWidget>

namespace Ui {
class testwidget;
}

class testwidget : public QWidget
{
    Q_OBJECT

public:
    explicit testwidget(QWidget *parent = nullptr);
    ~testwidget();

private:
    Ui::testwidget *ui;
};

#endif // TESTWIDGET_H

没有指定父对象时,新建的窗口是独立于主窗口,带边框的。

如果指定了父对象,就不是独立窗口了,与父窗口绑定了,就不需要show了,父窗口显示时能自动显示子窗口内容,且子窗口是被内嵌到主窗口了,就没边框了,只保留了父类的边框

1.2 QDialog (是Qwidget的子类)

QDialog 是一个对话框类,不能内嵌到父类中,是独立存在的

还是按照上面的方法添加一个QDialog窗口,这里一般选第三个,不带按钮的,如果需要可以自己实现。

添加完新的对话窗口后,在主窗口的构造函数立,new他的对象。

// 再在主要窗口下新建一个对话窗口
    Dialog* d = new Dialog(); // 一般不用指定父对象,因为他是独立于主窗口的
    d->show();  // 这种显示为非模态示为非模态

输出效果如下,这个对话框窗口是独立于主窗口的,而且为非模态窗口,焦点可以切换的。

如果换成模态显示他会阻塞程序,直到该对话窗口被关闭,程序才会继续执行。如下图,只显示了对话窗口,主窗口并没有显示,是因为函数阻塞在这了。而且模态窗口不能进行焦点切换的,不能切换页面了,只显示当前页面。

    // 模态显示
    d->exec();

1.3 QMainWindow(是Qwidget的子类)

 可以包含菜单栏,工具栏。状态栏。也不能内嵌到别窗口,是有自己的边框,独立存在的。

在ui界面 可以右键,进行工具栏菜单栏的删除创建等操作

2. qt中的坐标体系

原点在左上角,即坐标向右递增和向下递增的。子窗口的位置就是基于父窗口的左上角的。多窗口的位置是一个对应一个的。是相对的。move 可以指定控件的位置(相对位置)

move(10, 10);

3. qt内存回收机制

相关文章:

  • 计算机视觉:主流数据集整理
  • python: 并发编程 (Concurrent Programming) Simple example
  • TensorFlow 是一个由 Google 开发的开源机器学习库
  • 2025tg最新免费社工库机器人
  • pipeline 使用git parameter插件实现动态选择分支构造
  • bpmn.js + Node.js_构建高效的后端工作流处理系统
  • KAJIMA CORPORATION CONTEST 2025 (AtCoder Beginner Contest 394)题解 ABCDE
  • YOLOv11-ultralytics-8.3.67部分代码阅读笔记-utils.py
  • 大湾区经济网报道:2025春运收官 全国跨区流动90亿,大湾区12亿人次
  • 支持向量机(SVM):算法讲解与原理推导
  • 线结构光三维重建
  • C语言之递归
  • 【排序算法】六大比较类排序算法——插入排序、选择排序、冒泡排序、希尔排序、快速排序、归并排序【详解】
  • 【架构】事件驱动架构(Event - Driven Architecture,EDA)
  • electron提升软件运行权限,以管理员权限运行
  • Linux 常见指令
  • Linux之文件系统
  • Swiper插件的运用和学习
  • 【IO】java IO流的类型及IO模型
  • 大模型本地部署对于硬件配置要求太高,云端运行又担心数据泄露,有什么办法可以避免数据泄露又能够运行比较大的模型吗
  • 山东:小伙为救同学耽误考试属实,启用副题安排考试
  • 第十二届警博会在京开幕:12个国家和地区835家企业参展
  • 因操纵乙烯价格再遭诉讼,科莱恩等四家企业被陶氏索赔60亿
  • 国务院关税税则委:调整对原产于美国的进口商品加征关税措施
  • 受贿3501万余元,中石油原董事长王宜林一审被判13年
  • 成都警方通报:8岁男孩落水父母下水施救,父亲遇难