• 5347阅读
  • 8回复

[提问]树形列表如何实现 [复制链接]

上一主题 下一主题
 
只看楼主 倒序阅读 楼主  发表于: 2012-08-09
本人新手,请问如下图所示,这种列表如何实现?是用QTreeWidget吗,为什么我将其加入到布局管理器QHBoxLayout,编译运行会报错。
[attachment=undefined]
离线voidbroken

只看该作者 1楼 发表于: 2012-08-10
baidu 错误信息
离线ws_wll
只看该作者 2楼 发表于: 2012-08-10
上传一下代码和错误信息吧
离线jdwx

只看该作者 3楼 发表于: 2012-08-10
就是一个QDockWidget内一个QTreeWidget。
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
只看该作者 4楼 发表于: 2012-08-11
谢谢各位,上面这个错误已经解决,是采用QDockWidget和一个QTreeWidget实现。
现在遇到第二个问题,现在我有两张表,一张是“目录”表,一张是“文章”表。如何从数据库中读取记录实现列表展示?
求思路。。。。
QString sql="select title from `catalog` where 1=1";
.......

QTreeWidgetItem *root = new QTreeWidgetItem;   //添加一个父节点
int i=0;
while(row=mysql_fetch_row(resultSql))
{
  
  root->setText(i,row[0]);
  tree->addTopLevelItem(root);  
  
}
如何从“目录”表中读取的记录逐次添加到根目录,并点击根目录展开子节点(文章名)
离线voidbroken

只看该作者 5楼 发表于: 2012-08-11
这,哥们仔细考虑考虑行不
只看该作者 6楼 发表于: 2012-08-11
刚入门不久,控件还不太熟悉 呵呵。现在已经可以显示出根目录了,下一步显示子节点就可以了。
只看该作者 7楼 发表于: 2012-08-12
请教子节点的单击事件:
定义了slot函数:
public slots:
void openChildItem(QTreeWidgetItem *,int col);


void docManage::openChildItem(QTreeWidgetItem *item,int col)
{
intro->setText(item->text(col));

}

事件:
QTreeWidget *tree=new QTreeWidget(this);
connect(tree,SIGNAL(itemClicked(QTreeWidgetItem*,int)),this,SLOT(openChildItem(QTreeWidgetItem*,int col)));
断点调试时,鼠标单击树节点,为何没有进入slot函数?
离线ws_wll
只看该作者 8楼 发表于: 2012-08-13
connect(tree,SIGNAL(itemClicked(QTreeWidgetItem*,int)),this,SLOT(openChildItem(QTreeWidgetItem*,int col)));改为int,不要带参数。
快速回复
限100 字节
 
上一个 下一个