其他分享
首页 > 其他分享> > QT学习笔记2

QT学习笔记2

作者:互联网

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

当创建的对象在堆区的时候,如果指定的父亲是 QObject 派生下来的类或者 QObject 子类派生下来的类,可以不用管理释放的操作,会自动将对象放到对象树中。

对象树 一定程度上简化了内存回收机制。

坐标体系:以左上角为原点(0,0),X向右增加,Y向下增加。

 

标签:Widget,窗口,QT,中文,笔记,学习,QPushButton,按钮,btn
来源: https://www.cnblogs.com/wjjgame/p/16533266.html