按钮是 GUI 开发中最常用到的一种控件,作为一款著名的 GUI 开发框架,Qt 提供了很多种按钮,比如 QPushButton(普通按钮)、QRadioButton(单选按钮)、QToolButton(工具栏按钮)等。
QPushButton 是实际开发中最常使用的一种按钮,本节就给大家详细讲解它的用法。
QPushButton按钮的创建
QPushButton 类间接继承自 QWidget 类,它的继承关系如下:
QPushButton -> QAbstractButton -> QWidget
QAbstractButton 类是所有按钮控件类的基类,包含很多通用的按钮功能。
QPushButton 类专门用来创建可按压的按钮,如图 1 所示。
图 1 QPushButton 按钮
QPushButton 按钮上除了可以放置一串文本,文本左侧还可以放置图标,必要时还可以在按钮上放置图片。QPushButton 按钮可以作为一个独立的窗口,但实际开发中很少这样用,通常的用法是像图 1 这样将按钮内嵌到某个窗口中,作为一个子控件和其它控件搭配使用。
QPushButton 类提供了 3 个构造函数,分别是:
QPushButton(QWidget *parent = Q_NULLPTR) QPushButton(const QString &text, QWidget *parent = Q_NULLPTR) QPushButton(const QIcon &icon, const QString &text, QWidget *parent = Q_NULLPTR)
parent 参数用于指定父窗口;text 参数用于设置按钮上要显示的文字;icon 参数用于设置按钮上要显示的图标。
注意,第一个构造函数的 parent 参数附有默认值,所以 QPushButton 类还隐含着一个默认构造函数。也就是说,实例化 QPushButton 类对象时可以不传递任何参数。
QPushButton按钮的使用QPushButton 类提供了很多实用的属性和方法,它还从父类继承了很多属性和方法。下表给大家罗列了一些比较常用的属性和方法:
表 1 QPushButton常用属性
除了表 1 中罗列的获取、修改属性值的方法外,QPushButton 类常用的成员方法还有:
表 2 QPushButton常用方法
GUI 程序中,按钮的主要任务是完成和用户之间的交互,下表罗列了 QPushButton 类常用的信号函数和槽函数:
表 3 QPushButton信号和槽
接下来通过一个实例,给大家演示 QPushButton 按钮的用法:
#include#include #include int main(int argc, char *argv[]) { QApplication a(argc, argv); QWidget widget; //设置 widget 窗口的标题 widget.setWindowTitle("QWidget窗口"); //创建一个按钮,并内嵌到 widget 窗口中 QPushButton but("QPushButton按钮",&widget); //按钮的位置位于距 widget 窗口左上角 (100,100) 的位置 but.move(100,100); //设置按钮上文字的大小。 but.setStyleSheet("QPushButton{font:20px;}"); //调整按钮的尺寸 but.resize(200,200); //建立信息和槽,当用户点击并释放按钮后,该按钮隐藏。 QObject::connect(&but,&QPushButton::clicked,&but,&QPushButton::hide); widget.show(); return a.exec(); }
将程序复制到 main.cpp 文件中,运行结果为:
图 2 运行结果
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)