首页 > Windows开发 > 详细

QT入门-在窗体中添加按钮

时间:2020-07-04 21:55:09      阅读:152      评论:0      收藏:0      [点我收藏+]

 

1) QT中,按钮类叫做QPushButton。在mywidget.h的MyWidget类的私有变量中:

QPushButton b1; 或者QPushButton* b2;按住F4可以直接跳到.cpp文件。

2) 按钮初始化:在窗口类的构造函数里初始化即可。b2=new QPushButton(…)选中按F1可以查看构造函数以及其参数。

QPushButton(const QIcon &icon, const QString &text, QWidget *parent = nullptr)//图标以及……

QPushButton(const QString &text, QWidget *parent = nullptr)//按钮上显示的内容以及…

QPushButton(QWidget *parent = nullptr)//父窗口

 

至于修改内容的函数,需要从父类(QAbstractButton)里找。即void setText(const QString& text);

因此找不到相应的成员函数实现其功能的时候,可以从父类里找一下。

b2->setText(“Hello QT”);

b2=new QPushButton(“Hello QT”);

b2->show();

想要的效果是把按钮显示到窗口里(按钮实际上也是窗口?),但这时候按钮是独立显示出来的。如果窗口需要依附于另一个窗口,就应该给该窗口指定父类,这可以在构造函数内实现。因为此处实例化按钮是在MyWidget构造函数内实现的,所以父类指针是this,即b2=new QPushButton(“Hello QT”,this);

或者:QPushButton b1; b1.setParent(this);

注意,如果指定了父亲的话,就不用调用show函数了,因为直接在父类窗口显示了。

3) 两个按钮默认在同一个位置的话会发生覆盖,需要改变按钮的位置,相当于移动。

b1.move(x,y):移动到(x,y)

QT中窗体的坐标系:原点为左上角,x向右递增,y向下递增。

4) QT内存自动回收机制:无需delete

但适用范围有限:

i)适用于从QObject派生的类。

派生分为直接派生和间接派生(子孙)。

ii)指定父类(父亲析构前先析构孩子)。技术分享图片

 

QT入门-在窗体中添加按钮

原文:https://www.cnblogs.com/lipoicyclic/p/13236515.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!