网站做跳转怎么做,app网站开发后台处理,wordpress 实用插件,食品 骏域网站建设专家引言
在按照项目设计的样式来实现的时候#xff0c;发现了一些问题#xff0c;幸运的是最终找到了解决的方法。
详情
1.QTreeWidget设置列数和隐藏头#xff08;这里指的是有1所在的那个部位#xff09;
ui-treeWidget-setColumnCount(1);//设置有1列ui-tr…引言
在按照项目设计的样式来实现的时候发现了一些问题幸运的是最终找到了解决的方法。
详情
1.QTreeWidget设置列数和隐藏头这里指的是有1所在的那个部位
ui-treeWidget-setColumnCount(1);//设置有1列ui-treeWidget-header()-hide();//设置隐藏头2.设置某一项的高度
QTreeWidgetItem *rootItem new QTreeWidgetItem(ui-treeWidget);//创建QTreeWidget的项
rootItem-setText(0,QStringLiteral(公司));//设置项的文本
rootItem-setFlags(Qt::ItemIsEnabled|Qt::ItemIsSelectable);//设置项的属性可选择可使用
rootItem-setIcon(0,QIcon(:/new/prefix1/images/logo.png));//设置项的图标
rootItem-setSizeHint(0,QSize(0,70));//设置行高3.设置只隐藏根节点的箭头
ui-treeWidget-setRootIsDecorated(false);//设置只隐藏根节点的箭头4.通过向ui文件中拖入控件QStackWidget先根据程序运行中得到的数据的组数在QStackWidget中创建几组窗口用于与QTreeWidget窗口中的项绑定实现点击QTreeWidget来切换不同的堆栈窗口。 //创建窗口窗口中创建滚动区域将窗口添加到堆栈窗口中rootWidget new QWidget();QScrollArea *rootArea new QScrollArea(rootWidget);rootArea-setGeometry(0,0,677,552);rootArea-setWidgetResizable(false);//滚动区域的窗口QWidget *scrollWidget new QWidget();scrollWidget-setGeometry(0,0,677,600);scrollWidget-setMinimumSize(677,552);rootArea-setWidget(scrollWidget);QHBoxLayout *hLayout new QHBoxLayout(rootWidget);hLayout-addWidget(rootArea);hLayout-setContentsMargins(0,0,0,0);hLayout-setSpacing(0);//设置窗口的背景色rootWidget-setPalette(QPalette(Qt::yellow));rootWidget-setAutoFillBackground(true); //项堆栈窗口中添加创建好的窗口ui-stackedWidget-addWidget(rootWidget);//绑定树状控件的itemclicked信号实现点击某一个项跳转到不同的堆栈窗口connect(ui-treeWidget,QTreeWidget::itemClicked,this,ImDialog::onCurrentWidget);5.设置QTreeWidget的项的高度可以直接采用项的函数setSizeHint也可以按照下面这种方式来实现。 先封装另一个类类中重写函数sizeHint。
#ifndef MYDELEGATE_HPP
#define MYDELEGATE_HPP#include QApplication
#include QStyledItemDelegate/********************************************功能描述重写sizeHint
********************************************/class Delegate : public QStyledItemDelegate
{
public:explicit Delegate(QObject *parent nullptr) :QStyledItemDelegate(parent){}QSize sizeHint(const QStyleOptionViewItem option,const QModelIndex index) const override {return QStyledItemDelegate::sizeHint(option, index) index.data(Qt::UserRole).toSize();}
};#endif // MYDELEGATE_HPP使用的时候像下面这样使用。
ui-treeWidget-setItemDelegate(new Delegate(this));//可以直接这样用
rootItem-setData(0,Qt::UserRole,QSize(0,40));//可以直接这样用便能设置QTreeWidget的项的高度。其中rootItem是QTreeWidgetItem类的指针。 6.QTreeWidget将项的箭头放在右边
ui-treeWidget-setLayoutDirection(Qt::RightToLeft);//将箭头放在右边所有的控件都会从右向左排列这样所有的箭头都在右边貌似项的文本也会右对齐。 以上只是记录了大体思路和部分功能函数仅供参考。