-1、 QWidget类
QWidget叫做“基础窗口控件”,这个类是所有用户界面的基类,所有的窗口或者控件都直接或者间接的继承了这个类,使用这个类的时候可以直接使用,也可以继承了再使用。
QWidget类直接提供的成员函数为有x(),y(),width(),height();
QWidget里面有一个函数提供的成员函数也有上面的三个;
QWidget的frameGeometry()得到的是客户区的相关坐标和尺寸。
其实在这里的改变窗口的大小,客户区的大小等功能,即可以用手动敲代码的方式完成,也可以用QT Designer的代码生成器直接做出来,只不过用这个代码生成器的时候要记住了每一个控件响应的名字,继承了那个类,这个类里面有什么默认的信号,控件发送信号的机制是什么。后面的时候学到了这些内容。
在PyQt5中,其实和所有的GUI界面编程的原理是一样的,都包含了窗口,和控件。窗口是窗口,控件就是小按钮之类的。控件不能再细分了。窗口一般是用来显示的,控件是用来和用户交互的。常用的窗口有顶层窗口,Dialog窗口等,控件就有按钮,文本显示框,单选或者复选框,组合框等。学习的过程中,先学了主要的窗口显示,然后再学了相关的控件。
这回的是QWidget。
1、客户区不包含上层的工具栏,标题栏等。就是下面可以用来交互的部分。
(1)QWidget.resize(int width, int height):用来改变客户区的大小;
(2)QWidget.size():取得客户区的大小;
(3)QWidget.setGeometry(int x, int y, int width , int height ):同事改变客户区的大小和位置
(4)QWidget.pos():得到窗口左上角的坐标
在类里面,如果我们继承的是QWidget,那么在__init__()函数中,初始化的工作可以这么做:
把上面的QWidget替换成self,比如说设置客户区的显示的大小的话就可以直接初始化成为:
self.resizie(100,100)
这个初始化完成以后允许客户通过鼠标拖动的方式再次改变窗口的大小,并且这个大小尺寸是弹性的。
2、在PyQt5中如果不为控件指明基类,那么这个空间就会被当做窗口处理,这个时候setWindowTitle()和serWIndowIcon()两个函数就可用。---->这句话基本上没啥用