标签: qheaderview

PyQt:我如何为各个标题设置不同的标题大小?

我有一个包含两个项目列表的列表,一个单词和一个数字.这个列表将使用tablewidget呈现.

我的目标是生成一个包含两列并且具有必要行的表,但是具有单词的列的标题应该大于数字列.

我可以使用resize列来调整内容,但是我希望在调整大小后桌子周围没有白色的空白空间.

为了创建gui代码,我正在使用QtDesigner.Thanks.

python resize pyqt qtablewidget qheaderview

9
推荐指数
2
解决办法
1万
查看次数

在 PyQt4 中调整 QTableView 的垂直标题的大小?

在此处输入图片说明

我需要减小第一列的大小(带有垂直标题的列)

如何在 PyQt4 中调整 QTableView 的垂直标题的大小?

我有非常大的标题和小的 GUI 块来显示此表,所以请帮助我!

我能够调整所有列的大小,但无法弄清楚调整垂直标题的大小?

我尝试了很多事情,例如:

self.tableView.setColumnWidth(0, 30)  // only able to change the data columns in table not headers

self.tableView.verticalHeader().setResizeMode(QHeaderView.Interactive)  //Able to change the height of headers but not width of them
Run Code Online (Sandbox Code Playgroud)

我想制作可由用户调整大小的标题,并且不依赖于项目的任何其他参数,如窗口大小、其他列的大小......

有人可以帮我弄这个吗?

python resize qtableview pyqt4 qheaderview

6
推荐指数
1
解决办法
4126
查看次数

向 QTreeView 添加垂直标题

我有一个QTreeView子类(和QAbstractItemModel子类),它有一个很好的水平标题。我想添加垂直标题(从左侧向下)以匹配。但与QTableView具有单独的垂直 ( setVerticalHeader()) 和水平标题 ( setHorizontalHeader()) 不同的是,QTreeView只允许单个标题 ( setHeader())。

我知道我可以假装最左边的列是标题并使用不同的背景颜色呈现它(我不需要调整行大小或重新排列行的能力,所以我不必实现任何这些特殊行为)。但这并没有考虑到当地的风格。例如,在我的系统上,标题具有轻微的渐变,使它们具有近乎 3D 的外观。

因此,我正在寻找一种方法来添加适当的垂直标题(我猜它是 的子类QHeaderView),或者在最左侧的列中呈现标题,但以正确的方式呈现它。

qt qt4 qtreeview qheaderview

5
推荐指数
1
解决办法
3374
查看次数

如何将标头设置为QListView

我有一个QListView,里面有5个项目.在我的QListView中说(美国,加拿大,丹麦,埃及,芬兰).现在我想为所有这些项目设置一个公共标题作为COUNTRIES.如何将标题设置为QListView.请帮忙.

qt qt4 qlistview qheaderview qt5

5
推荐指数
1
解决办法
5773
查看次数

5
推荐指数
1
解决办法
9851
查看次数

QTableView:无需 QHeaderView 即可交互式调整列大小

我有一个QTableView隐藏的水平标题

table->horizontalHeader()->hide();
Run Code Online (Sandbox Code Playgroud)

无标题视图

正如您所看到的,由于列宽,中间列中的文本被剪裁。

要查看文本,用户需要调整列的大小,但如果没有标题,我无法执行此操作。

我希望能够做的是将鼠标悬停在列的边缘上并显示正常的调整大小图标,然后允许用户将列拖得更宽。

这可能吗?

qt qtableview qheaderview

5
推荐指数
1
解决办法
1448
查看次数

如何仅使用 CSS 对齐 Qt 中 QTableView 标题中的文本?

我尝试了 CSS 代码:

QTableView QHeaderView::section {
    text-align: center;
 }
Run Code Online (Sandbox Code Playgroud)

它没有帮助我。

PS 我在使用 Qt 的 WinCC OA 中编写 SCADA 系统,在那里您可以仅使用 CSS 更改组件的外观

qt qtableview qheaderview qtstylesheets

5
推荐指数
1
解决办法
1481
查看次数

QTableView中每个标题的不同工具提示

我可以使用以下命令向所有标题添加单个工具提示

tableview = QTableView()
tableview.horizontalHeader().setToolTip("headers")
Run Code Online (Sandbox Code Playgroud)

但是我可以向每个标题添加不同的工具提示,即我需要访问包含标题的QWidgets,例如(不起作用):

tableview.horizontalHeader().Item[0].setToolTip("header 0")
Run Code Online (Sandbox Code Playgroud)

python pyqt tooltip qtableview qheaderview

4
推荐指数
1
解决办法
3178
查看次数

PyQt5:当您单击QHeaderView的标题时,如何对QTableView进行排序?

当我单击QHeaderView的标题时,我想对QTableView进行排序。我在互联网上找到了几个这样的代码示例:在pyqt5中对QTableView进行排序, 但对我而言不起作用。我也看过Summerfield的Rapid Gui编程书,但我还是可以找到可行的方法。

在这个快速示例中,如何按名称或年龄对表格进行排序?

这是我的代码:

from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
import pandas as pd
import operator

# This class was generated from the Qt Creator
class Ui_tableView_ex(object):
    def setupUi(self, tableView_ex):
        tableView_ex.setObjectName("tableView_ex")
        tableView_ex.resize(800, 600)
        self.centralwidget = QWidget(tableView_ex)
        self.centralwidget.setObjectName("centralwidget")
        self.gridLayout = QGridLayout(self.centralwidget)
        self.gridLayout.setObjectName("gridLayout")
        self.myTable = QTableView(self.centralwidget)
        self.myTable.setObjectName("monTablo")
        self.gridLayout.addWidget(self.myTable, 0, 0, 1, 1)
        tableView_ex.setCentralWidget(self.centralwidget)

        self.retranslateUi(tableView_ex)
        QMetaObject.connectSlotsByName(tableView_ex)

    def retranslateUi(self, tableView_ex):
        _translate = QCoreApplication.translate
        tableView_ex.setWindowTitle(_translate("tableView_ex", "MainWindow"))


class TableTest(QMainWindow, Ui_tableView_ex):
    def __init__(self, parent=None):
        super(TableTest, self).__init__(parent)
        self.setupUi(self)

        self.model = …
Run Code Online (Sandbox Code Playgroud)

python sorting qtableview qheaderview pyqt5

4
推荐指数
1
解决办法
3821
查看次数

QHeaderView:根据列的内容大小进行 Stretch 或 ResizeToContents

我有一个 QTableWidget,最后一列包含可变长度的文本。

我想根据该部分的大小将 QHeaderView 的最后一部分拉伸或调整为其内容的大小。如果内容大小不超过小部件中的剩余空间,我想拉伸它(以防止小部件中出现丑陋、未填充的空间)。我可以通过使用setStretchLastSection(True). 但是,如果内容大小超过拉伸的列,则内容的最后部分将被剪切,因为该列未调整大小。QHeaderViewResizeToContents为这种情况提供了ResizeMode,但在内容较短的情况下,这会使小部件具有未填充的空间。

我想过手动调整列大小。不幸的是,由于sectionSizeFromContents()受保护,我无法直接访问内容大小。我想我可以继承 QHeaderView 并重新实现它,但我想知道是否有更好的解决方案。

qt pyqt qheaderview qt5 pyqt5

3
推荐指数
1
解决办法
3385
查看次数