QT控件 之(TreeView)实现右键菜单栏功能,双击事件能实现区分不同的节点的点击效果

引言:给大家推荐一个超好用的软件,此软件也是优秀博主开发,主要是针对在我们开发过程中会不断的收集资料,而经过时间的洗礼,这些资料慢慢变得庞大起来。但是就出现了个问题:你2年前收集的资料,你在某天打开发现只有一个文件名,根本不知道具体里面干了什么,如果你有耐心,一个个打开重新编译,很好!你是牛人,但是这样做就是既繁琐、又无助,那么问题来了,有什么好办法,解决这个问题呢?
以下这个博客帮你解决了这个问题:
精灵球Plus介绍_清风徐来Groot的博客-CSDN博客
可能大家都习惯于收集资料,但是大家却忘了更主要的是如何去复习,就像我们上学时期,可能
会去写笔记,但是时间一长,压根也不记得自己记了什么东西,所以需要一个移动的笔记本,图形化的效果图来帮助大家记住:里面有个试用版本,可以下下来试试看,体验下!!!
Qt版本企业级界面_清风徐来Groot的博客-CSDN博客
欢迎大家来咨询:
qq:[email protected]  清风徐来Groot
[email protected]  
————————————————
版权声明:本文为CSDN博主「Littlehero_121」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Littlehero_121/article/details/105406203

一、qt中的treeView实现右键菜单栏的功能,主要使用的槽函数是:

void on_treeView_customContextMenuRequested(const QPoint &pos)
界面就是拖个treeView控件在上面就行,构造函数的实现如下:
ui->setupUi(this);
    model = new QStandardItemModel(ui->treeView);//创建模型
    ui->treeView->setModel(model);//导入模型
    ui->treeView->setContextMenuPolicy(Qt::CustomContextMenu);
    ui->treeView->header()->setSectionResizeMode(QHeaderView::Stretch);
    model->setHorizontalHeaderLabels(QStringList()<appendRow(item);//通过模型对象添加这个条目

    model->setItem(1,0,new QStandardItem(tr("two")));
    model->setItem(2,0,new QStandardItem(tr("three")));

    //开始给第0行的子节点进行添加
    QStandardItem * itemFolder;
    itemFolder = new QStandardItem(tr("one_info"));
    item->appendRow(itemFolder);
    item->setChild(0,1,new QStandardItem(QStringLiteral("one_message")));

    for(int i=0;i<5;++i){
        QStandardItem* itemgroup = new QStandardItem(QStringLiteral("%1").arg(i+1));
        itemFolder->appendRow(itemgroup);
        itemFolder->setChild(itemFolder->index().row(),1,new QStandardItem(QStringLiteral("122222")));
    }

    //给第一行添加子节点
    model->item(1)->appendRow(new QStandardItem(tr("two info")));

最后实现的界面效果如下:

QT控件 之(TreeView)实现右键菜单栏功能,双击事件能实现区分不同的节点的点击效果_第1张图片

实现右键菜单栏功能的效果如下:

QT控件 之(TreeView)实现右键菜单栏功能,双击事件能实现区分不同的节点的点击效果_第2张图片

 二、实现双击不同节点,可以出现不同的结果,调用的槽函数是:

 void on_treeView_doubleClicked(const QModelIndex &index);

最后实现的效果是:点击不同的节点打印出来不同的东西,如下:

QT控件 之(TreeView)实现右键菜单栏功能,双击事件能实现区分不同的节点的点击效果_第3张图片

有兴趣可以参考源码链接,如下:

qt中的treeView的右击事件和双击事件_qttreeview子节点点击的事件,qttreeview点击事件-QT文档类资源-CSDN下载

你可能感兴趣的:(QT界面控件布局原创,qt,开发语言,ui)