Python Pyside6 QtableView 数据模型以区域设置格式显示数据

问题描述 投票:0回答:1

我在显示来自 QtSql.QSqlRelationalTableModel().

的数据时遇到问题。

这是我用来构建数据模型的一个函数:

# FUNCTION IN DATABASE MODULE
def incomeViewData(self):
    """
    data model for income table
    """
    self.model.setTable("income")
    """
    set relation to the category, cycle and fix to show the name instead the id
    """
    self.model.setRelation(3, QtSql.QSqlRelation("inc_category", "inc_cat_id", "inc_cat_name"))
    self.model.setRelation(4, QtSql.QSqlRelation("cycle", "cyc_id", "cycle_name"))
    self.model.setRelation(5, QtSql.QSqlRelation("var_fix", "var_id", "value"))
    """
    set the ability to have a combobox for the category when double clicked in the cell
    """
    # self.tbl_income.setItemDelegate(QtSql.QSqlRelationalDelegate())
    
    # FORMAT HEADER
    self.model.setHeaderData(0, Qt.Horizontal, "ID")
    self.model.setHeaderData(1, Qt.Horizontal, "Datum")
    self.model.setHeaderData(2, Qt.Horizontal, "Betrag")
    self.model.setHeaderData(3, Qt.Horizontal, "Kategorie")
    self.model.setHeaderData(4, Qt.Horizontal, "Turnus")
    self.model.setHeaderData(5, Qt.Horizontal, "Fix")
    self.model.setHeaderData(6, Qt.Horizontal, "Bemerkung")
    self.model.setSort(1, QtCore.Qt.AscendingOrder)
    return self.model # RETURNS MODEL TO CALLING FUNCTION

# CALLING FUNCTION
def incomeView(self):
    # data model for income table
    mod_income = dbc().incomeViewData()
    mod_income.select()
    
    self.ui.load_pages.tbl_income.setModel(mod_income)
    self.ui.load_pages.tbl_income.setColumnHidden(0, True)
    for i in range(mod_income.columnCount()):
        # https://stackoverflow.com/questions/69912374/how-to-set-a-pyside6-qtablewidget-column-width-to-15pt
        self.ui.load_pages.tbl_income.horizontalHeader().setMinimumSectionSize(175)
        self.ui.load_pages.tbl_income.horizontalHeader().setSectionResizeMode(i, QHeaderView.ResizeToContents)
        self.ui.load_pages.tbl_income.horizontalHeader().setStretchLastSection(True)

这是我的结果:

enter image description here

如何设置以本地格式显示的日期和金额,例如日期 14.02.2023 和金额 2.341,64?

谢谢!!!!

python locale qtableview pyside6
1个回答
0
投票

我想我发现了一些可以帮助我得到我想要的结果的东西。 https://overthere.co.uk/2012/07/29/using-qstyleditemdelegate-on-a-qtableview/

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.