QTreeWidget简单用法「建议收藏」

QTreeWidget简单用法「建议收藏」1、voidQTreeWidget::setHeaderLabels(constQStringList&labels)设置表头,QStringList有几项,表头就有多少列2、voidQHeaderView::setSortIndicatorShown(boolshow)Thispropertyholdswhetherthesortindicatoris

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

1、void QTreeWidget::setHeaderLabels(const QStringList & labels)

设置表头,QStringList有几项,表头就有多少列

2、void QHeaderView::setSortIndicatorShown(bool show)

This property holds whether the sort indicator is shown.
By default, this property is false.(这里有误,经测试默认应该是true)

译:设置表头是否显示排序指示符,SortIndicator为水平标题栏文字旁边的小三角符号

如果要显示排序指示符,那么这个函数没必要调用。

3、void QHeaderView::setSortIndicator(int logicalIndex, Qt::SortOrder order)

Sets the sort indicator for the section specified by the given logicalIndex in the direction specified by order, and removes the sort indicator from any other section that was showing it.

译:为指定的 logicalIndex字段设置排序指示符(如果是升序,就是朝上的小三角;如果是降序,就是朝下的小三角)

同时在其他的字段位置将不显示排序指示符(其实任何情况下只能在一个字段位置处显示排序指示符)。

这只是一个初始化的设置,后期用户的操作可以改变这种设置。

4、void QTreeWidget::addTopLevelItem(QTreeWidgetItem * item)

为QTreeWdiget增加顶级项目

5、void QTreeWidgetItem::addChild(QTreeWidgetItem * child)

为顶级项目增加子项目

6、void QTreeWidget::setItemWidget(QTreeWidgetItem * item, int column, QWidget * widget)

将widget控件显示到item的column列里

下面给出一些简单实例代码:

QTreeWidget简单用法「建议收藏」

#include <QTreeWidget>
#include <QTreeWidgetItem>
#include <QStringList>
#include <QSpinBox>

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);

    QTreeWidget* treeWidget = new QTreeWidget(this);
    treeWidget->setWindowTitle("QTreeWidget");
    //设定头项名称
    treeWidget->setHeaderLabels(QStringList()<<"Key"<<"Value");
    
    treeWidget->setSortingEnabled(true);
    //treeWidget->header()->setSortIndicatorShown(true);//设置排序指示符是否显示
    treeWidget->header()->setSortIndicator(0,Qt::AscendingOrder);//为第0列设置排序指示符为升序

    //设定各个项
    QTreeWidgetItem* A = new QTreeWidgetItem(QStringList()<<"A");
    A->setIcon(0, QIcon(":/images/a.png"));//资源文件前缀为/
    A->setCheckState(0, Qt::Checked);

    QTreeWidgetItem* B = new QTreeWidgetItem(QStringList()<<"B");
    B->setIcon(0, QIcon(":/images/b.png"));
    B->setCheckState(0, Qt::Checked);

    QTreeWidgetItem* C = new QTreeWidgetItem(QStringList()<<"C");
    C->setIcon(0, QIcon(":/images/c.png"));
    C->setCheckState(0, Qt::Checked);

    treeWidget->addTopLevelItem(A);//添加顶级项A
    treeWidget->addTopLevelItem(B);//添加顶级项B
    treeWidget->addTopLevelItem(C);//添加顶级项C

    for(int i=0; i<3; ++i)//给A添加子项目
    {
        QStringList columItemList;
        QTreeWidgetItem *child;
        QString key, value;
        key += "a" + QString::number(i);
        value += QString::number(i);
        columItemList<<key<<value;
        child = new QTreeWidgetItem(columItemList);
        A->addChild(child);
        treeWidget->setItemWidget(child,1,new QSpinBox);//将QSpinBox显示到child项的第一列里
    }

    treeWidget->show();
}

Jetbrains全家桶1年46,售后保障稳定

treeWidget->setItemWidget(child,1,new QSpinBox)

这句代码调用之后会遮住value列的值,可以注释掉

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/213577.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pytham激活码_通用破解码

    pytham激活码_通用破解码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月15日
  • springcloudfeign原理面试题_微服务feign作用

    springcloudfeign原理面试题_微服务feign作用Feign原理简述启动时,程序会进行包扫描,扫描所有包下所有@FeignClient注解的类,并将这些类注入到spring的IOC容器中。当定义的Feign中的接口被调用时,通过JDK的动态代理来生成RequestTemplate。 RequestTemplate中包含请求的所有信息,如请求参数,请求URL等。 RequestTemplate声明Request,然后将Request交给cl…

    2022年9月26日
  • 函数bzero_lingobin函数

    函数bzero_lingobin函数函数原型:  voidbzero(void*s,size_tn);函数功能:  将字符串s的前n个置为0,且包括’\0’注意:  在POSIX.1-2008标准里面已经没有这些函数了,现在使用memset代替转载于:https://www.cnblogs.com/chen-cai/p/9158847.html…

    2022年10月13日
  • 【AVD】简述某些视频在线播放时卡顿、本地播放时不卡顿的问题

    【AVD】简述某些视频在线播放时卡顿、本地播放时不卡顿的问题曾经在业务中遇到过这样的问题,我们编码出来的视频在Android、iOS端,使用ijkplayer内核的播放器播放时卡顿,甚至无法任意定位播放位置,将导致卡顿无法播放。今天,又有同事遇到类似的问题,而我发现,我只写过一个《用notepad++和Excel协助分析媒体文件包》,而并没有把当时遇到的问题分析记录下来。于是,在此简单说明一下。视频文件结构教科书般的教程、课程中对视频文件结构的描述非常详细,此处不赘述,简单地说,视频文件也是一种文件,是文件,就是一堆二进制数的集合,而且是一个.

    2022年9月15日
  • Android制作字符串表格String.xml转EXCEL工具

    Android制作字符串表格String.xml转EXCEL工具publicstaticListgetAllExternalSdcardPath(){ListPathList=newArrayList();StringfirstPath=Environment.getExternalStorageDirectory().getPath();Log.d(TAG,”getAllExter

    2022年8月22日
  • Dell T40服务器系统安装问题[通俗易懂]

    Dell T40服务器系统安装问题[通俗易懂]问题安装系统找不到硬盘在正常安装系统2016时遇到无法找到驱动器,用此系统安装别的机器发现可以装,确定系统是好的,但是用这个系统安装T40服务器时就是找不到硬盘,具体解决步骤如下:首先重启电脑,进入bios界面,选择restoresettings,进入下拉框,在选择BIOSdefault,就行bios恢复出厂值,之后再重新安装就OK了解析:因为2016及以上版本的系统都是集成了软阵列的…

    2022年10月4日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号