简体   繁体   English

PyQt5标签被切断

[英]PyQt5 label cut off

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. 我猜想这与setFont有关,因为当我删除l1.setFont时,所有文本都会显示。 If possible, please list solutions that doesn't alter the GUI too much. 如果可能,请列出不会对GUI造成太大影响的解决方案。

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()

Since you have changed the size of the font you must adjust the size for that you must use adjustSize() : 由于更改了字体的大小,因此必须调整字体大小,必须使用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()

在此处输入图片说明

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM