PyQt5 Win10防止窗口出现在屏幕外

from PyQt5.QtGui import *
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
import sys
app = QApplication(sys.argv)
screen = app.primaryScreen()
size = screen.size()
height, width = size.height(), size.width()#得到屏幕分辨率

def adjust_outofscreen(self, x, y,h, w):#x,y是窗口本来出现的坐标,h,w是窗口的高和宽
        y=height-h-60 if y>(height-h-60) else y #60是任务栏的高度,如果需要可对x进行相同操作
        return x,y#窗口的高和宽不变,返回新的窗口位置

在Ubuntu上不会有出现在屏幕外的问题,但是在win10上会出现,win7上面没有测试过。

解决的大致原理:

1.得到屏幕分辨率,也就是屏幕高和宽

2.判断窗口是否会出现在屏幕外

3.如果出现屏幕外,重现设置窗口起始位置,否则不做改变

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值