• 10374阅读
  • 6回复

[提问]QTreeWidgetItem里可以加其QComboBox吗? [复制链接]

上一主题 下一主题
离线edsionte
 
只看楼主 倒序阅读 楼主  发表于: 2011-05-10
如题,我现在想用树形结构来显示我的文件结构,
而且每个文件有对应的QComboBox
请问QTreeWidgetItem如何加QComboBox部件
离线ppdayz

只看该作者 1楼 发表于: 2011-05-10
可以右击菜单。。
右击item,出来个菜单。。
代码呆会贴上来
离线hanvy.xia
只看该作者 2楼 发表于: 2011-05-10
QTreeWidgetItem 不可以加 QComboBox
但是可以通过
void QTreeWidget::setItemWidget ( QTreeWidgetItem * item, int column, QWidget * widget )
将QTreeWidgetItem  和  QComboBox
让QComboBox 显示在QTreeWidgetItem  的column列上
离线hanvy.xia
只看该作者 3楼 发表于: 2011-05-10
将QTreeWidgetItem  和  QComboBox 关联起来
离线ppdayz

只看该作者 4楼 发表于: 2011-05-10
xxx.h
  1. private slots:
  2.   void on_treeWidgetDesign_customContextMenuRequested(QPoint pos);


xxx.c
  1. ui->treeWidgetDesign->setContextMenuPolicy(Qt::CustomContextMenu);
  2. void xxxx::on_treeWidgetDesign_customContextMenuRequested(QPoint pos)
  3. {
  4.     currentItem = ui->treeWidgetDesign->itemAt( pos );
  5.     if( currentItem == 0)
  6.         return;
  7.     QMenu *treeWidgeMenu = new QMenu(ui->treeWidgetDesign);
  8.     treeWidgeMenu->addAction(ui->actionS_rename);
  9.     treeWidgeMenu->addAction(ui->actionCollpase_Rooms);
  10.     treeWidgeMenu->addAction(ui->actionUpdate_Driver);
  11.     treeWidgeMenu->addSeparator();
  12.     treeWidgeMenu->addAction(ui->actionS_delete);
  13.     treeWidgeMenu->exec(QCursor::pos());
  14. }

[ 此帖被ppdayz在2011-05-10 16:03重新编辑 ]
离线edsionte
只看该作者 5楼 发表于: 2011-05-11
谢谢。
离线米饭拌面

只看该作者 6楼 发表于: 2011-05-13
话说,QTreeWidgetItem是可以加QComboBox的,给QTreeWidget添加Delegate,在Delegate里根绝index判断你想要添加QComboBox的item位置,创建QComboBox就可以了。具体你可以看看QTableWidget里添加Delegate的例子,demo里就有你找找。
QQ:32336134
快速回复
限100 字节
 
上一个 下一个