如何在下面设置单元格50大小QTableWidget?setMinimumWidth我尝试使用 :和方法setMinimumHeight (这是我在文档中找到的)设置最小宽度和高度,但它不起作用。
也就是说,使所有单元格都适合表格而不形成滚动条。
代码示例:
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(400, 400)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
self.tableWidget = QtWidgets.QTableWidget(self.centralwidget)
self.tableWidget.setGeometry(QtCore.QRect(10, 40, 380, 345))
self.tableWidget.setObjectName("tableWidget")
self.tableWidget.setColumnCount(0)
self.tableWidget.setRowCount(0)
MainWindow.setCentralWidget(self.centralwidget)
self.retranslateUi(MainWindow)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
def __init__(self):
super().__init__()
self.setupUi(self)
self.tableWidget.setColumnCount(10)
self.tableWidget.setRowCount(20)
self.tableWidget.verticalHeader().setVisible(False)
self.tableWidget.horizontalHeader().setVisible(False)
self.tableWidget.setMinimumWidth(1) # < ---
self.tableWidget.setMinimumHeight(1) # < --- то что я пытался сделать
self.tableWidget.verticalHeader().setDefaultSectionSize(17)
for i in range(10):
self.tableWidget.setColumnWidth(i, (63 if i in [0, 4, 8, 9] else 21))
if __name__ == '__main__':
import sys
app = QtWidgets.QApplication(sys.argv)
Window1 = MainWindow()
Window1.show()
sys.exit(app.exec_())
试试这样: