怎么用Qt的TableView来显示数据,数据有些来自MySQL的表中(多张不同的表),并且有些数据并不是从MySQL取
我需要做一个程序用Qt的TableView来显示数据,数据有些来自MySQL的表中(多张不同的表),并且有些数据并不是从MySQL取的,而是通过程序计算得到,我在网上可以...
我需要做一个程序用Qt的TableView来显示数据,数据有些来自MySQL的表中(多张不同的表),并且有些数据并不是从MySQL取的,而是通过程序计算得到,我在网上可以查到的资料Qt的table都是针对单表操作的,如果有具体的例子的话更加的好
展开
1个回答
展开全部
可以采用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();
//创建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();
追问
这个方法不就是把内容一个一个加上去么?除了这个以外还有其他的方法么,Qt没有类似C#的表格操作方法么?
追答
据我所知qt对于表格的操作,就只有这几种方法了
一、使用ActiveQt模块读取
二、先用其它工具将.xls文件转换成XML格式的文件,然后读取
三、使用其它第三方开发包读取。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询