Qtitan库

一、Qtitan 官网 devmachines

基于 Qt 框架的第三方 GUI 组件库,提供了多种功能的组件

主要包括:

  • Ribbon:提供类似于 Microsoft Office 的功能区界面,支持多种主题和样式。
  • DataGrid:用于显示和编辑大数据量的表格,支持排序、过滤和分组等功能。
  • Chart:提供了多种类型的图表控件,可以用于数据可视化。
  • Docking:提供灵活的停靠窗口管理功能,适用于复杂的多窗口应用。
  • fastInfoset:
    在这里插入图片描述
    在这里插入图片描述在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

QtitanComponents.qch 帮助文件
在这里插入图片描述

GridTableView 信号
sortingChanged()
focusRowChanged(int,int)

QWidget
└── GridBase (数据)基类
	├── Grid 标准表格(在QtnGrid.h中定义)
	├── CardGrid 卡片式(在QtnCardGrid.h中定义)
	├── TreeGrid 树形(在QtnTreeGrid.h中定义)
	└── 其他具体视图类

QObject
└──GridViewBase (视图)基类
	├── GridTableView
	│   ├── GridBandedTableView 多表头(Banded)
	│   │   └── GridBandedTableViewVertical 垂直多表头
	│   └── GridCardView 卡片式
	│       └── GridCardViewVertical 垂直卡片式
	└── GridTreeView 树形

GridColumnBase ()基类
└──GridColumn - 普通列
	└──GridTableColumn - 表格列
		├──GridBandedTableColumn - 多表头--表格列
		└──GridCardColumn - 卡片视图列

GridModelRecordsAbstract
└──GridModelRecords  存储了排序后的数据
	├──GridModelRecordsTree
	└──GridModelRecordsTable

编辑器相关类 :
- GridEditorBase - 编辑器基类
- GridEditorRepository - 编辑器仓库
- 各种具体编辑器如 GridStringEditorRepository 、 GridPictureEditorRepository 等

样式和渲染相关类 :
- GridStyleSheetInfo - 样式表信息
- GraphicControl - 图形控制基类
- GraphicPrimitive - 图形基元

数据模型相关 :
- GridModelController - 模型控制器
- GridRow - 行数据表示

排序机制:
	GridTableView 的排序是通过 GridModelController 和 GridSortColumnRules 实现的

关键数据结构:
	GridPersistentRow 可以跟踪行在排序前后的位置
	getRowIndexByPersistentRow() 方法可以获取新位置

Qtitan::Grid  *mGrid = new Qtitan::Grid(this);
Qtitan::GridTableView* mView = mGrid->view<Qtitan::GridTableView>();
auto control = mView->modelController();
 Qtitan::GridRow gRow = control->getGridRow(row);
 if (!mView->isRowShowing(gRow)) //行不在视口
     mView->scrollToRow(gRow, false); //视口中
 auto values = gRow.modelIndex(column).data(CUSTOM_ROLE).value<CUSTOM_DATA>();

Qtitan.pro

TEMPLATE = subdirs

include(src/shared/platform.pri)
CONFIG += ordered

QTN_BUILD_SOURCE = 0
QTN_COMPONENT_VERSION = $$fromfile($$PWD/src/grid/dbgrid.pri, QTN_COMPONENT_VERSION)
exists($$PWD/src/shared/QtitanGrid/QtitanGrid.pro) {
    !isEmpty(QTN_COMPONENT_VERSION):QTN_BUILD_SOURCE = 1
}
equals(QTN_BUILD_SOURCE, 1) {
    !build_pass {message(QtitanDataGrid source code being prepared for building...)}
	SUBDIRS = src/shared/QtitanBase \
              src/shared/QtitanFastInfoset \
              src/shared/QtitanStyle \
              src/shared/QtitanGrid
}
exists($$PWD/doc/qdocs.pri) {
    include($$PWD/doc/qdocs.pri)
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值