- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在创建一个应用程序来保存对象发送服务的数据。
我用 Qt
创建了它,这是一个类型为 QStandardItemModel
的模型,我想用 QtableView
显示它。
但是 QtableView
向我显示了左侧的行级别。如果可能,我想删除它或隐藏它。
我也有一个标题问题,我想水平分成两部分,然后将底部的相应部分垂直分成两部分。这些划分的原因是我有两个开头相似的标题(通信日期和通信编号)
感谢您的回复,因为这对我来说真的很重要。
最佳答案
这种类型的QHeaderView
是不存在的,但是我们可以为它创建我们必须创建一个继承自QHeaderView
的类,主要重写方法paintSection
这是负责绘制 QHeaderView
部分的方法。
但要为任何类型的视觉设计做通用项目,我们必须保留每个部分的位置和大小信息,为此我们将创建一个模型,以了解为什么覆盖类我建议您阅读内容以下 link .
解释每个方法的逻辑是广泛的,所以只放置link实现上述项目的项目,并描述每个类的任务:
TableHeaderItem
:负责保存每一项的信息,除了标签外,主要是rowspan和columnspan。
GridTableHeaderModel
:提供对每个项目的访问的模型类,以便我们可以编辑和读取每个项目
GridTableHeaderView
:此类是自定义 QHeaderView
,其中主要方法被覆盖以获得所需的外观。
GridTableView
(可选):是一种具有直接与 GridTableHeaderView 一起工作的方法的 TableView。
输出:
注意:要隐藏垂直标题,只需使用 hide()
方法即可:
horizontalHeader()->hide();
关于c++ - 如何制作一个 QheaderView 多级?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46469720/
我正在使用 Qt 5.7,并且我有一个开始时没有行的 QWidgetTable。当我插入第一行时,表格的 verticalHeader(类型为 QHeaderView)的宽度从 0 变为 15。然而,
我想保存tableview的列顺序和每列是否显示。看起来 QHeaderView::saveState() 和 QHeaderView::restoreState() 做了我想要的。 我读过 docu
我正在尝试编辑 QTreeWidget 标题的样式。 我发现我可以使用 QHeaderView::section 编辑它,然后编辑背景、颜色、边框... 但是,我想单独编辑专门的列标题。我在 docu
我有一个 QTableView带有隐藏的水平标题 table->horizontalHeader()->hide(); 如您所见,由于列宽,中间列中的文本被剪裁了。 要查看文本,用户需要调整列的大小,
我有一个自定义标题 QProduitCartoHeaderView在继承自 QHeaderView 的类中定义. 在我的标题中,我有一个复选框用于选中/取消选中同一列中的所有复选框 对于所有数据行。
我有带有水平 headerView 的 QTableView 对象,(我隐藏了垂直的)。我将 setShowGrid(false) 设置为从 qtableView 中删除网格,但是如何删除 QTabl
我在 QTableWidget 中对 QHeaderView 进行子类化,以提供隐藏/显示部分的自定义功能。有没有办法从标题 View 中获取部分的文本?我知道我可以在表格范围内做到这一点,但这不是我
我为我的应用程序使用 cleanlooks 样式,它最适合我想要的外观和感觉。 令人恼火的是 QHeaderView(例如 QTableWidget 的水平标题)在 Unix 主机上运行时,不会在各部
我尝试在我的 QTableWidget 中修改我的 QHeaderView(水平)的文本。 第一个问题:是否可以像 QTableWidgetItem 一样将其设置为可编辑的? 第二个问题:如果不可以,
我有一个稍微自定义的 QTableView,显示我开发的模型。当我指示 TableView 调整 ColumnToContents 的大小时,我最终在列文本的两侧各有一个大约 20 像素的额外缓冲区。
我正在创建一个应用程序来保存对象发送服务的数据。 我用 Qt 创建了它,这是一个类型为 QStandardItemModel 的模型,我想用 QtableView 显示它。 但是 QtableView
我有一个带有自定义 QHeaderView 的自定义 QTableView 模型,以便呈现用于对表格内容执行“全选”功能的复选框。 在我的 header 重载的 paintSection() 函数中,
我有一个 QTableWidget,其最后一列包含可变长度的文本。 我想根据该部分的大小将 QHeaderView 的最后一部分拉伸(stretch)或调整其内容。如果内容大小不超过小部件中的剩余空间
我想知道如何访问 sectionsInserted 插槽。我需要访问该方法的参数。因为它是一个 protected 插槽,我认为我需要从 QHeaderView 继承。现在,即使我从 QheaderV
我已经编写了具有多列的 QTreeView 的后代。我想创建一个弹出菜单,当用户右键单击列标题时会出现该菜单。为此,我尝试从 QTreeView 捕获信号,但 QTreeView 似乎没有在标题上发出
我使用 QTableview 和 QAbstractTableModel 创建了一个表。我使用 QHeaderView 添加了一些垂直标题。在其中一个标题单元格中,我想使用委托(delegate) .
我正在尝试使用样式表为我的 QTableWidget 自定义标题的外观。我这样做: QHeaderView::section { background-color: transparent;
我使用的是 PyQt4,这段代码运行良好。 self.table.horizontalHeader().setResizeMode(1, QHeaderView.Stretch) 它正在拉伸(stre
QHeaderView 部分在调整大小时可能会超出 View (向右)。也就是说,我可以将一个部分的大小调整得过大,而其他部分将在右侧消失。 是否可以限制这个?比如设置header的最大宽度。 我在表
这个问题是this post的进一步发展并且是不同的,尽管看起来与 this one 相似. 我正在尝试重新实现 QHeaderView::paintSection,以便从模型返回的背景得到尊重。我试
我是一名优秀的程序员,十分优秀!