python窗口界面自适应_pyqt 窗口图片自适应

最近,又用 Pyqt5 写了一个新手指引的小界面,今天测试的同学抛出了一个异常。

屏幕分辨率过低的时候,界面展示不全。

刚拿到反馈的时候很疑惑,因为之前是做过窗口最大化处理的,又通读一遍代码,找到了对应的问题。

我在展示图片的时候,没有将图片和窗口做适配,只是最大化了展示窗口,但是展示图片的大小还是原始尺寸,于是又新增了一个图片随窗口变化等比例缩放的函数:

def m_resize(self,w_box, h_box, pil_image): # 参数是:要适应的窗口宽、高、Image.open后的图片

w, h = pil_image.width(), pil_image.height() # 获取图像的原始大小

f1 = 1.0*w_box/w

f2 = 1.0 * h_box / h

factor = min([f1, f2])

width = int(w * factor)

height = int(h * factor)

#return pil_image.resize(width, height)

return pil_image.scaled(width, height)

再次测试时,问题解决。

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值