窗口一般设置

pyqt5的窗口一般设置

书接上回,pyqt按钮、文本、输入框的介绍,本次继续学习窗口大小和位置,本文主要设置了窗口显示在中心区域。相关代码和注释如下:

import sys  #sys模块提供了与Python解释器和操作系统交互的功能
from PyQt5.QtWidgets import QApplication,QWidget,QPushButton,QLabel,QLineEdit,QDesktopWidget
#QApplication是用于管理应用程序的类,而QWidget是用于创建窗口和用户界面的类,后面各类为按钮,文本,输入框,
if __name__=='__main__':  #检查Python脚本是否正在作为主程序直接运行
    app = QApplication(sys.argv)  #创建一个APP对象,sys.argv是一个包含命令行参数的列表,用于从命令行接收参数
    w=QWidget()  #意味着你可以使用变量w来引用和操作这个窗口部件
    w.setWindowTitle('第一个pyqt')  #设置窗口名称
    btn=QPushButton('登录')  #创建一个按钮
    btn.setGeometry(120,120,40,40)  #按钮位置大小
    btn.setParent(w)  #认w窗口作“干爹”,用于显示在w窗口中,注意不加此句,按钮显示不出来
    label = QLabel("邮箱:",w)  #创建一个文本框,与上句代码功能一样,不过这个相当于出生直接认w当“亲爹”
    label.setGeometry(40,40,60,60)  #设置label框的位置和大小,依次为:x、y、w、h
    edit=QLineEdit(w)  #创建文本框
    edit.setPlaceholderText("请输入密码:")  #文本框显示内容
    edit.setGeometry(40,100,60,60)  #文本框位置大小
    
    
    w.resize(500,500)  #设置窗口大小
    center_pointer=QDesktopWidget().availableGeometry().center()  #获取桌面上窗口区域的中心坐标
    x=center_pointer.x()  #将中心窗口x坐标赋值给x
    y=center_pointer.y()  #将中心窗口x坐标赋值给y
    rect=w.frameGeometry()  #获取窗口位置和大小,包括左上角的坐标(x、y坐标)以及宽度和高度。
    width = rect.width()  #将窗口宽度信息赋值给width
    height = rect.height()  #将窗口高度信息赋值给heighet
    w.move(int(x-width/2),int(y-height/2))  #窗口移动到中心,这个公式想不明白的话可以画一个图,另外一定要加int,因为move函数只识别整形变量不然会报错
   
   
    w.show()  #显示窗口
    app.exec_()  #用于启动事件循环。事件循环负责处理用户输入、绘制界面、处理事件、触发信号等等。只有在事件循环运行时,你的应用程序才能够响应用户的操作。

为了和上节课代码区分,窗口设置中心代码在上述代码块的两个空行之间,同时多引用了一个QDesktopWidget,这点请注意
效果如下:
运行窗口处于屏幕中央

设置窗口图标

这里只需要加两句代码:
第一句是引入QIcon类:注意这个是在代码的最开始处,毕竟是引入类,我想你懂的

from PyQt5.QtGui import QIcon  #导入PyQt5中的QIcon类,用于在GUI应用程序中设置窗口或应用程序的图标

第二句是设置图标:放在w.show()这句前面,记不住的话看上面的代码

w.setWindowIcon(QIcon('liked.png'))  #设置想要的图标作为窗口图标,这里选了一个点赞的图图作为图标

这里注意一下,最好把图片和你设计界面的这个文件在同一文件夹,便于查找
效果图如下:
点赞图标
另外如果感兴趣可以加一句

from PyQt5 import Qt  #与上一个相同,添加到最上端
..........       #此处为省略了中间代码
w.setWindowFlags(Qt.Qt.CustomizeWindowHint)  #隐藏标题栏操作,放在w.show()上面即可

隐藏标题栏效果图如下:
在这里插入图片描述

同时这里给大家推荐一个高清小图标网站(阿里巴巴矢量图标库,可以放心使用):https://www.iconfont.cn/

OK 这就是今天的学习内容 也不知道我写清楚了没有 下班下班

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值