pyqt 万能简易模板(一)

4 篇文章 3 订阅

本文将介绍一些pyqt5基本使用技巧,不借助Qtdesigner,而是全部用代码编写,将实现页面布局、窗口自适应、字体自适应等功能。一般的简易工程均可使用,简单高效。

对于pyqt5的一些基本技巧,本文内容基本够用,可以快速实现自己想要的界面。

1、设置窗口名称

self.setWindowTitle("窗口名称")

2、获取显示器分辨率大小

#获取显示器分辨率大小
self.screenRect = self.desktop.screenGeometry()
self.height = self.screenRect.height()
self.width = self.screenRect.width()

3、窗口尺寸自适应桌面分辨率

#获取显示器分辨率大小
self.screenRect = self.desktop.screenGeometry()
self.height = self.screenRect.height()
self.width = self.screenRect.width()
#获取不同分辨率下需要缩放的比例,2560为参考尺寸
self.scale_ratio = self.width / 2560
#根据显示器分辨率自动设置窗口大小
self.setGeometry(50, 50, 50 + int(900 * self.scale_ratio), 50 + int(400 * self.scale_ratio))

4、获取控件尺寸大小

(1)获取控件尺寸大小:直接使用.width()和.height()获取宽度和高度,如label1.width()。

(2)获取主窗口:event.size().width()、event.size().height(),需加入event处理。

def resizeEvent(self, event):
    w  = event.size().width()
    h = event.size().height()

5、设置控件位置与大小

(1)resize:使用.resize(width, height),设置控件大小。

(2)setFixedSize:使用.setFixedSize(width, height),设置控件大小。

(3)move:使用.move(left, top)放置控件,以左上方顶点为参考。

(4)setGeometry:窗口放置位置,.setGeometry(left, top, right, bottom),可以用来初始化主窗口。

以上位置和大小的布局方式为绝对布局,不利于自适应窗口大小布局。自适应窗口需要用layout布局,会在Layout自适应窗口布局部分详细介绍。

6、设置控件样式

config = "QLabel{qproperty-alignment: AlignCenter;color:#FF0000;font-size:15px;font-weight:bold;font-family:宋体;}"

self.label1.setStyleSheet(config)

可以设置字体样式、对齐方式、背景颜色等。Label设置时需在config中用QLabel,如果是QPushButton,则需把config中的QLabel替换成QPushButton。

也可以如下分成多条语句。

self.btn1.setStyleSheet("QPushButton{background:(#F000F0)}"
                        "QPushButton{qproperty-alignment: AlignCenter;color:#FF00FF;font-size:25px;font-weight:bold;font-family:宋体;}"
                                 )

7、控件启用与禁用

(1)禁用:.setEnabled(False)

(2)启用:.setEnabled(True)

8、刷新窗口QApplication.processEvents()

当窗口控件显示内容没有及时更新时,可调用该函数刷新窗口和控件状态。

完整代码:pyqt 万能简易模板(四)

  • 0
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Coding的叶子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值