• Qt界面编程基本操作


    Qt界面编程基本操作

    了解基本代码构成

    类widget的头文件widget.h如下:

    #ifndef WIDGET_H
    #define WIDGET_H
    
    #include <QWidget>
    #include <QDebug>
    
    namespace Ui {
    class Widget;
    }
    
    class Widget : public QWidget
    {   //信号与槽相关宏
        Q_OBJECT
    
    public:
        //构造且使用explicit(显式)方式进行, parent = 0表示不指定父对象.
        explicit Widget(QWidget *parent = 0);
        ~Widget();
    
    private slots:
        //槽函数
        void on_pushButton_clicked();
        void on_pushButton_2_clicked();
    
    private:
        Ui::Widget *ui;
    };
    
    #endif // WIDGET_H
    

    常用基础知识

    查看帮助

    • 光标放到对应单词上, 点击F1, 即可进入对应单词的帮助.
    • Qt左边导航菜单进入帮助.
    • /Qt/Qt5.x/5.x/mingwxxx_xx/bin/assistant.exe

    添加C++11支持

    • CONFIG += C++11

    指定父对象的两种方式

    • 一种通过对象的setParent属性
    • 一种是构造对象时通过构造函数传参QPushButton(QWidget *p);
    • 好处:
      • 父窗口显示, 子窗口就显示(父对象要在子对象创建后调用show()).
      • 父窗口结束, 自动回收所有子窗口内存.

    新建多个窗口

    • 在添加类时选择Base Class, 一般选择Qwidget较多.
    • 多个窗口的头文件放到主窗口的头文件中, 作为主窗口的对象成员来使用.

    信号与槽

    • 信号函数和槽函数均没有返回值.
      1. connect(sender, signal, 接收对象, 槽函数), 每个参数都是指针类型:
    //按下按钮1, 则按钮2隐藏
    connect(&btn1, &QPushButton::pressed, &btn2, &QPushButton::hide);
    
      1. 转到槽

    对象的常见操作

    • 隐藏对象
    Obj.hide()
    
    • 显示对象
    Obj.show();
    
    • 设置对象的显示字符
    Obj.setText("xxx");
    
    • 移动对象
    Obj.move(100, 100)
    
    • 窗口持续运行等待用户操作, 该函数会造成窗口阻塞, 当创建模态对话框时, 调用此函数阻塞. 此函数之后的代码将在关闭窗口时执行.
    a.exec();
    
    • 设定窗口大小
    resize(400, 300);
    
    • 发送信号
      • 声明信号(信号没有返回值, 但可以有参数, 信号只需声明, 无需定义)
        signals:
        void mySignal();
    
    - 发送信号
    
        emit mySignal();
    
  • 相关阅读:
    python 递归计算阶乘
    python引用
    python3 函数参数
    名片管理系统V0.0.2(函数实现)
    python 之socket语法及相关
    常见模块(一)
    常见模块(二)
    Python之迭代器、生成器、装饰器和递归
    python 之自定义函数
    python 之SET和collections
  • 原文地址:https://www.cnblogs.com/linkyip/p/8546671.html
Copyright © 2020-2023  润新知