PyQt5标签被切断 [英] PyQt5 label cut off

查看:20
本文介绍了PyQt5标签被切断的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我运行这个程序时,我的部分标签被切断了.有没有什么办法解决这一问题?我猜它与 setFont 有关,因为当我删除 l1.setFont 时,所有文本都会显示.如果可能,请列出不会过多改变 GUI 的解决方案.

When I run this program, parts of my label gets cut off. Is there any way to fix this? I'm guessing it has to do with setFont, because when I remove l1.setFont all the text shows. If possible, please list solutions that doesn't alter the GUI too much.

import sys
from PyQt5 import QtGui, QtWidgets, QtCore, Qt
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *

class App(QtWidgets.QMainWindow):
    def __init__(self):
    super(App, self).__init__()
    self.setWindowTitle('Test GUI')
    self.setWindowIcon(QtGui.QIcon('logo.png'))
    self.setGeometry(800, 500, 500, 500)
    self.ui()

def ui(self):    
    l1 = QtWidgets.QLabel(self)
    l1.setText('Text')
    l1.setFont(QtGui.QFont('Arial', 50))  
    l1.move(100, 100)

    self.show()

def main():
    app = QtWidgets.QApplication(sys.argv)
    GUI = App()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()

推荐答案

既然你改变了字体的大小,你必须调整字体的大小,你必须使用 adjustSize():

Since you have changed the size of the font you must adjust the size for that you must use adjustSize():

def ui(self):    
    l1 = QtWidgets.QLabel(self)
    l1.setText('Text')
    l1.setFont(QtGui.QFont('Arial', 50)) 
    l1.adjustSize() 
    l1.move(100, 100)
    self.show()

这篇关于PyQt5标签被切断的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆