Qt——窗口部件QWidget 按钮QPushButton

窗口部件

基础窗口部件QWidget

QWidget类是所有用户界面对象的基类。
QWidget继承自QObject类和QPaintDevice类。QObject是所有支持Qt对象模型的对象的基类,QPaintDevice类是所有可以绘制的对象的基类。
几乎所有的部件都继承自QWidget。从理论上来讲,任何继承自QWidget的类的派生类的实例,都可以作为中心窗口部件使用。
在这里插入图片描述

常用属性和方法

void show(); 显示窗口
nline void QWidget::resize(int w, int h);重新设置窗口的长宽
inline void QWidget::setGeometry(int ax, int ay, int aw, int ah)设置窗口位置同时设置窗口尺寸
inline void QWidget::move(int ax, int ay)移动窗口位置
inline int QWidget::width() cons t获取窗口的长度
inline int QWidget::height() const设置窗口的宽度

实例

/*创建窗口并对齐进行操作*/
#include <QApplication>    // Qt的应用工程类
#include <QWidget>         // 窗口类,一个窗口

int main(int argc, char **argv)
{
    QApplication app(argc, argv);  // app 就是整个工程

    QWidget w;  // 窗口
    w.show();   // 显示

    QWidget w1;
    QWidget w2;
    QWidget w3;
    w1.show();
    w2.show();
    w3.show();

    w1.resize(200,300);
    w1.setWindowTitle("w1");

    return app.exec();         // exec 内部是一个死循环,主要用来处理事件
}

QPushButton按钮

QPushButton继承自 QAbstractButton ,后者继承自 QWidget 。

常用属性和方法:

(1) QString text () const: 返回按键上的文字;
(2) void setText ( const QString & text ): 设置按键上的文字;
(3) bool autoDefault() const;: autoDefault属性,它会影响按键的外观;
(4) void setAutoDefault(bool);: 设置autoDefault属性;
(5) bool isDefault() const;: default属性,仅在Dialog中此属性有效;
(6) void setDefault(bool);: 设置default属性;
(7) void setFlat(bool);: 设置FLAT属性
(8) bool isFlat() const;: 设置按键的外观是否有突起。

信号

继承自QAbstractButton的

void clicked ( bool checked = false )
void pressed ()
void released ()
void toggled ( bool checked )

继承自QWidget的

void customContextMenuRequested ( const QPoint & pos )

继承自QObject的

void destroyed ( QObject * obj = 0 )

常见用法

文本

QPushButton的文本可以在按钮被创建时设置,也可以在之后使用 setText() 方法设置。使用 text() 方法来获得按钮当前的文本。

图标

QPushButton的图标可以在按钮被创建时设置,也可以在之后使用 setIcon() 方法设置。使用 icon() 方法来获得按钮当前的图标。

位置和大小的设置

setGeometry() 来设置按钮的位置和大小。如果只是想修改按钮的大小,使用 resize() 方法来设置。

按钮信号连接

当有事件发生时,QPushButton会发出信号。要操控按钮,把确切的信号和一个信号相连接:
connect(m_button, SIGNAL(released()), this, SLOT(handleButton()));
在这里插入图片描述