如何調整標簽和布局以使標簽之間的邊距保持不變?我在編輯器中嘗試了不同的選項,但沒有任何效果。標簽之間的大小是固定的。我不知道如何減少它。帶來了代碼。
我的自動將標簽添加到布局中的功能。謝謝你的幫助。
def auto_label(self, number, color, text):
test_label = QLabel()
test_label.setScaledContents(True)
test_label.setFixedWidth(50)
test_label.setFixedHeight(50)
#test_label.setSizePolicy(1, 10)
font = QtGui.QFont()
font.setPointSize(14)
font.setBold(True)
font.setWeight(75)
test_label.setFont(font)
test_label.setAlignment(QtCore.Qt.AlignCenter)
if color == "blue":
test_label.setStyleSheet('background: blue')
if color == "red":
test_label.setStyleSheet('background: red')
if color == "gray":
test_label.setStyleSheet('background: gray')
if color == "green":
test_label.setStyleSheet('background: green')
if color == "yellow":
test_label.setScaledContents(True)
test_label.setPixmap(QPixmap('images/yu.png'))
if color == "yellow1":
test_label.setScaledContents(True)
test_label.setPixmap(QPixmap('images/ya.png'))
if color == "yellow2":
test_label.setScaledContents(True)
test_label.setPixmap(QPixmap('images/yo.png'))
if color == "yellow3":
test_label.setScaledContents(True)
test_label.setPixmap(QPixmap('images/ye.png'))
if color == "white":
test_label.setStyleSheet('background: white')
#self.centralwidget.resize(width, 50)
self.horizontalLayout_2.insertWidget(number, test_label)
我的用戶界面代碼:
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(723, 367)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.centralwidget)
self.verticalLayout_2.setObjectName("verticalLayout_2")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
self.horizontalLayout_2.setSpacing(10)
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.verticalLayout_2.addLayout(self.horizontalLayout_2)
self.gridLayout = QtWidgets.QGridLayout()
self.gridLayout.setObjectName("gridLayout")
self.inputLine = QtWidgets.QLineEdit(self.centralwidget)
font = QtGui.QFont()
font.setFamily("Times New Roman")
font.setPointSize(50)
self.inputLine.setFont(font)
self.inputLine.setAutoFillBackground(True)
self.inputLine.setInputMethodHints
(QtCore.Qt.ImhPreferLowercase|QtCore.Qt.ImhPreferUppercase)
self.inputLine.setText("")
self.inputLine.setFrame(False)
self.inputLine.setAlignment(QtCore.Qt.AlignCenter)
self.inputLine.setClearButtonEnabled(False)
self.inputLine.setObjectName("inputLine")
self.gridLayout.addWidget(self.inputLine, 0, 0, 1, 1)
self.enterButton = QtWidgets.QPushButton(self.centralwidget)
self.enterButton.setObjectName("enterButton")
self.gridLayout.addWidget(self.enterButton, 1, 0, 1, 1)
self.verticalLayout_2.addLayout(self.gridLayout)
MainWindow.setCentralWidget(self.centralwidget)
self.statusbar = QtWidgets.QStatusBar(MainWindow)
self.statusbar.setObjectName("statusbar")
MainWindow.setStatusBar(self.statusbar)
self.retranslateUi(MainWindow)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
和有問題的影像



uj5u.com熱心網友回復:
您可以QHboxLayout用于此目的。
QHboxLayout為其所有子項提供相同的寬度,并在添加新子項時自動調整所有子項的寬度,在這種情況下QLabel(除非修改)
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/429971.html
