树控件QTreeWidget

树控件跟表格控件类似,也可以有多列,也可以只有1列,可以有多行,只不过每一行都是一个QTreeWidgetItem,每一行都是一个可以展开的树

常用属性和方法

显示和隐藏标题栏

树控件只有水平标题栏

//获取和设置标题栏的显隐
bool isHeaderHidden() const
void setHeaderHidden(bool hide)

//隐藏标题栏
tree->setHeaderHidden(true);

 还可以先获取到树控件的标题栏,然后调用标题栏的方法,来设置标题栏是否可见

//设置标题栏是否可见
void QHeaderView::setVisible(bool v)

//隐藏标题栏
tree->header()->setVisible(false);

点击标题栏排序

//获取和设置标题栏是否开启了排序
bool isSortingEnabled() const
void setSortingEnabled(bool enable)

//开启排序
tree->setSortingEnabled(true);

 开启点击标题栏会出现一个排序箭头,点击标题栏,就会根据当前列排序

动画效果

开启树控件里面的条目展开时会有一个缓冲效果,而不是立即展开

//获取和设置动画效果
bool isAnimated() const
void setAnimated(bool enable)


//开启动画效果
tree->setAnimated(true);

没开启:

开启了,条目的展开有一定的缓冲:

 滚动条的显示和隐藏

//设置和获取水平滚动条的显隐
Qt::ScrollBarPolicy horizontalScrollBarPolicy() const
void setHorizontalScrollBarPolicy(Qt::ScrollBarPolicy)

//设置和获取垂直滚动条的显隐
Qt::ScrollBarPolicy verticalScrollBarPolicy() const
void setVerticalScrollBarPolicy(Qt::ScrollBarPolicy)


//隐藏水平和垂直滚动条
tree->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
tree->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);

Qt::ScrollBarPolicy有三种取值:

  • Qt::ScrollBarAsNeeded,控件宽高太小导致内容显示不全时滚动条会出现
  • Qt::ScrollBarAlwaysOff,总是关闭
  • Qt::ScrollBarAlwaysOn,总是开启

开启:

选择模式

单选、多选、按住ctrl键多选,shift键多选...

//获取和设置控件的选择模式
QAbstractItemView::SelectionMode selectionMode() const
void setSelectionMode(QAbstractItemView::SelectionMode mode)


//设置为多选,既可以按shift也可以按ctrl键选择
tree->setSelectionMode(QAbstractItemView::ExtendedSelection);

 mode有5种取值:

  • QAbstractItemView::SingleSelection,只能但选
  • QAbstractItemView::ContiguousSelection,按住ctrl键可以多选
  • QAbstractItemView::ExtendedSelection,按住ctrl或者shift键可以多选
  • QAbstractItemView::MultiSelection,只要点击就能多选
  • QAbstractItemView::NoSelection,不能选择</
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值