新手求助,Qt问题,下面那段代码是什么意思

新手求助,Qt问题,下面那段代码是什么意思,第1张

QList<QTreeWidgetItem > rootList;//创建一个QList队列,队列名字叫做rootList,队列中每个元素是QTreeWidgeItem指针。(QTreeWidgetItem是树状图控件的一个节点

rootList << root;//表示把root节点放到rootList中去。

tree->insertTopLevelItems(0, rootList); //把rootList中的所有节点,挂载到tree控件的顶层。

//这是方法一:

//适用于子节点较少时

bool eventFilter(QObject  pObject, QEvent  pEvent)

{

    if(QEvent::MouseButtonPress == pEventtype() / 判断是不是按键事件 /)

    {

        QMouseEvent pMouseEvent = static_cast<QMouseEvent>(pEvent);

        if(Qt::RightButton == pMouseEvent->button()  / 判断是不是右键按下 /)

        {

            if(pObject ==   / 判断 pObject是否等于某个treeWidgetItem/)

                {

                  / 显示不同的菜单 /

                }

        }

          

    } 

}

//方法二:

//就是继承,重载按键事件

//适用于子节点较多,以及子节点右键菜单多而不同情况

通过实现

itemClicked

(QTableWidgetItem

)

信号的槽函数,就可以获得鼠标单击到的单元格指针,获得到了当前的位置信息

connect(tableWidget,SIGNAL(itemDoubleClicked(QTreeWidgetItem,int)),this,

SLOT(

getItem(QTreeWidgetItem,int))

);

通过

QTreeWIdgetltem

你可以获得到你想要的全部数据

ui->treeWidget->setColumnCount(1); //设置列数ui->treeWidget->setHeaderLabel(tr("图像选择")); //设置头的标题QTreeWidgetItem imageItem1 = new QTreeWidgetItem(ui->treeWidget,QStringList(QString("图像1")));imageItem1->setIcon(0,QIcon("xxxpng"));QTreeWidgetItem imageItem1_1 = new QTreeWidgetItem(imageItem1,QStringList(QString("Band1"))); //子节点1imageItem1->addChild(imageItem1_1); //添加子节点QTreeWidgetItem imageItem2 = new QTreeWidgetItem(ui->treeWidget,QStringList(QString("图像2")));QTreeWidgetItem imageItem2_1 = new QTreeWidgetItem(imageItem2,QStringList(QString("Band1"))); //子节点1QTreeWidgetItem imageItem2_2 = new QTreeWidgetItem(imageItem2,QStringList(QString("Band2"))); //子节点2imageItem2->addChild(imageItem2_1); //添加子节点imageItem2->addChild(imageItem2_2);ui->treeWidget->expandAll(); //结点全部

ui->treeWidget->setColumnCount(1); //设置列数ui->treeWidget->setHeaderLabel(tr("图像选择")); //设置头的标题QTreeWidgetItem imageItem1 = new QTreeWidgetItem(ui->treeWidget,QStringList(QString("图像1")));

imageItem1->setIcon(0,QIcon("xxxpng"));

QTreeWidgetItem imageItem1_1 = new QTreeWidgetItem(imageItem1,QStringList(QString("Band1"))); //子节点1

imageItem1->addChild(imageItem1_1); //添加子节点

QTreeWidgetItem imageItem2 = new QTreeWidgetItem(ui->treeWidget,QStringList(QString("图像2")));

QTreeWidgetItem imageItem2_1 = new QTreeWidgetItem(imageItem2,QStringList(QString("Band1"))); //子节点1

QTreeWidgetItem imageItem2_2 = new QTreeWidgetItem(imageItem2,QStringList(QString("Band2"))); //子节点2

imageItem2->addChild(imageItem2_1);  //添加子节点

imageItem2->addChild(imageItem2_2);

ui->treeWidget->expandAll(); //结点全部展开

以上就是关于新手求助,Qt问题,下面那段代码是什么意思全部的内容,包括:新手求助,Qt问题,下面那段代码是什么意思、qt treewidget 不同子节点触发不同右键菜单、QT Qtablewidget数组,鼠标双击获取行与列应该怎么实现等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/10097193.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存