tablewidget被下一个标头覆盖

2024-09-30 16:42:17 发布

您现在位置:Python中文网/ 问答频道 /正文

下一组的标题覆盖前一组的表格。以前有没有关于如何保护桌子的想法?我试着用垫片,但没用。我还有什么办法可以解决这个问题吗? 我有一个标题,例如帐号和姓名。下面我想列出所有的帖子。但这项计划不仅仅针对一个客户。对于100多个账户来说,在给定日期记录余额是非常必要的。(例如年底时)

from PyQt5.QtWidgets import (QApplication, QComboBox, QDialog, QWidget,
QDialogButtonBox, QFormLayout, QGridLayout, QGroupBox, QHBoxLayout,
QLabel, QLineEdit, QMenu, QMenuBar, QPushButton, QSpinBox, QTextEdit,QScrollArea,
QVBoxLayout,QListWidget,QTableWidget,QTableWidgetItem)

from    PyQt5.QtCore       import Qt, pyqtSlot, pyqtSignal, QSize, QDate


import sys

class Dialog(QDialog):

    def __init__(self,parent=None):
        super().__init__(parent)

        self.setGeometry(64,64, 1000, 400)
        self.setWindowTitle("test")
        self.scrollarea = QScrollArea(self)
        self.scrollarea.setFixedWidth(990)
        self.scrollarea.setWidgetResizable(True)
        widget = QWidget()
        self.scrollarea.setWidget(widget)
        self.layout_SArea = QGridLayout(widget)
        self.layout_All   = QVBoxLayout(self)
        self.layout_All.addWidget(self.scrollarea)

        for i in range(1,20,2):
            self.layout_SArea.addWidget(QLabel("I am the header"),i,0)
            self.tableWidget  = QTableWidget()
            self.tableWidget.setRowCount(10)
            self.tableWidget.setColumnCount(12)
            for x in range(10):
                newitem = QTableWidgetItem()
                newitem.setData( Qt.EditRole,'{:0,.0f}'.format(x))
                newitem.setFlags( Qt.ItemIsSelectable |  Qt.ItemIsEnabled )
                newitem.setTextAlignment(Qt.AlignRight)
                self.tableWidget.setItem(x, 0, newitem)
            self.layout_SArea.addWidget(self.tableWidget,i+1,0,i+1,5)
            
        self.layout_All.addLayout(self.layout_SArea)
    


if __name__ == '__main__':
    app = QApplication(sys.argv)
    dialog = Dialog()
    sys.exit(dialog.exec_())

1条回答
网友
1楼 · 发布于 2024-09-30 16:42:17

row span参数表示网格中有多少“行单元格”被项占用,因此它不应使用行索引

改为:

    self.layout_SArea.addWidget(self.tableWidget, i+1, 0, 1, 5)

相关问题 更多 >