QT学习笔记2
作者:互联网
- P6. QPushButton创建
- P7. 对象树
- P8. Qt中的坐标系
- (P6 QPushButton创建)
QPushButton Class:
Header: #include <QPushButton>
qmake: QT += widgets
1 #include "widget.h" 2 #include<QPushButton> 3 Widget::Widget(QWidget *parent) 4 : QWidget(parent) 5 { 6 //创建一个按钮 7 QPushButton * btn = new QPushButton; 8 //btn->show();//show以顶层方式弹出窗口控件 9 //我们的需求是让btn对象 依赖在Widget窗口中 10 btn->setParent(this);//this指的就是当前的Widget 11 12 //显示文本 13 //btn->setText("第一个按钮");//(这行视频中没问题,但是我的报错了)中文报错的可以看看是不是新建项目的时候选了msvc,换成mingw就可以了 14 btn->setText("中文中文中文"); 15 16 //创建第二个按钮 (会按照控件的大小创建窗口) 17 QPushButton * btn2=new QPushButton("second",this);//这种方式是直接设置了按钮文字和父亲 18 //移动第二个按钮(否则会把第一个按钮在相同的位置覆盖) 19 btn2->move(200,0);//(第一个是横向距离,第二个是纵向距离) 20 //按钮重新设置大小 21 btn2->resize(100,50); 22 23 //重置窗口大小 24 resize(600,400);//传入宽和高 25 //固定窗口大小(用户不可拖拽窗口大小) 26 setFixedSize(600,400); 27 28 //设置窗口标题 29 setWindowTitle("First Window"); 30 } 31 32 Widget::~Widget() 33 { 34 }
运行结果
setText设置中文编译不通过:msvc编译器的小朋友要在.pro文件中加编译选项设置msvc { QMAKE_CFLAGS += /utf-8 QMAKE_CXXFLAGS += /utf-8 } //直接在代码里添加;亲测有效
如果中文显示乱码:最上面一栏 工具->选项->文本编辑器->行为->(右侧)文件编码,默认编码->UTF-8
- (P7. 对象树)
当创建的对象在堆区的时候,如果指定的父亲是 QObject 派生下来的类或者 QObject 子类派生下来的类,可以不用管理释放的操作,会自动将对象放到对象树中。
对象树 一定程度上简化了内存回收机制。
- (P8. Qt中的坐标系)
坐标体系:以左上角为原点(0,0),X向右增加,Y向下增加。
标签:Widget,窗口,QT,中文,笔记,学习,QPushButton,按钮,btn 来源: https://www.cnblogs.com/wjjgame/p/16533266.html