为了账号安全,请及时绑定邮箱和手机立即绑定

我需要做一个程序用Qt的TableView来显示数据,该怎么实现?

我需要做一个程序用Qt的TableView来显示数据,该怎么实现?

杨魅力 2022-10-08 15:07:07
数据有些来自MySQL的表中(多张不同的表),并且有些数据并不是从MySQL取的,而是通过程序计算得到,我在网上可以查到的资料Qt的table都是针对单表操作的,如果有具体的例子的话更加的好~
查看完整描述

2 回答

?
慕标5832272

TA贡献1966条经验 获得超4个赞

可以采用Stacked Layouts分页布局,具体实现代码如下,望采纳:

//创建QWidget类的一个对象pWidget

QWidget *pWidget = new QWidget;

//创建一个布局管理器类 layout

QHBoxLayout *manLayout = new QHBoxLayout;

//左边的列表控件

QListWidget *listWidget = new QListWidget(pWidget);

listWidget->addItem(QObject::tr("外观设置"));

listWidget->addItem(QObject::tr("网页浏览"));

...

//右边的分页控件

QWidget *page1 = new QWidget(pWidget);

<…page1上增加控件>

QWidget *page2 = new QWidget(pWidget);

<…page2上增加控件>

<设置布局管理>

QVBoxLayout *leftLayout = new QVBoxLayout;

leftLayout->addWidget(listWidget);

....

//右边分页布局(两页窗口)

QStackedLayout *stackedLayout = new QStackedLayout;

stackedLayout->addWidget(page1);

stackedLayout->addWidget(page2);

//通过调用QWidget::setLayout()函数,将layout布局管理器类添加到窗口部件对象pWidget中

manLayout->addLayout(leftLayout);

manLayout->addLayout(stackedLayout);

pWidget->setLayout(manLayout);

listWidget->setCurrentRow(0);

//关联:列表与分组布局

QObject::connect(listWidget, SIGNAL(currentRowChanged(int)),

stackedLayout, SLOT(setCurrentIndex(int)));

pWidget->show();


查看完整回答
反对 回复 2022-10-12
?
RISEBY

TA贡献1856条经验 获得超5个赞

据我所知qt对于表格的操作,就只有这几种方法了 一、使用ActiveQt模块读取 二、先用其它工具将.xls文件转换成XML格式的文件,然后读取 三、使用其它第三方开发包读取。

查看完整回答
反对 回复 2022-10-12
  • 2 回答
  • 0 关注
  • 147 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信