pyqt 获取当前屏幕的分辨率(多屏)

主管给了一个任务,让在不同的分辨率使用不同的ui。搜索了网上的用法,还是没有解决问题。试了半天,

current_monitor = desktop.screenNumber(self)
rect = desktop.screenGeometry(current_monitor)

上述代码始终返回主屏幕的分辨率。后来无意中发现,show之后,获取的分辨率是正常的,于是重写了showEvent就解决了

这里有个限制,必须有一个主layout,否则无效!
这里有个限制,必须有一个主layout,否则无效!

这里有个限制,必须有一个主layout,否则无效!

class LaucherWidget(QtWidgets.QWidget):
    def __init__(self, parent):
        super().__init__(parent=parent)
       

    def showEvent(self, event):
        desktop = QDesktopWidget()
        current_monitor = desktop.screenNumber(self)
        rect = desktop.screenGeometry(current_monitor)
        self.ui = Ui_launcher.Ui_launcher()
        if rect.width() == 1366:
            self.ui = UI_launcher1366_768.Ui_launcher()
        self.ui.setupUi(self)

对qt不是很熟悉,勉强能用的程度。高手忽略

(pyqt5实现的)

温馨提示:代码仅供参考

 

 

补充:

建了一个qq群:389954854,主要目的是互帮互助,通过交流促进python技术。很多初学者往往不知道如何下手,还等什么,快快加入进来吧!

389954854

或者关注微信公众号:python码码有趣的

python码码有趣的

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值