Advertisement

QTreeView对象如何设置行高?(Row Height)

阅读量:

如题所述,希望调整QTreeView中各个节点的行高。在查阅Qt官方参考文档未获得明确答案后,转而通过网络搜索,获取到两种可行方案,具体如下:

1. 通过继承QItemDelegate类,并对其中的sizeHint函数进行重写,在该函数中设定具体的行高值,随后将该自定义类的实例通过QTreeView::setItemDelegate方法关联至treeview对象;

此方法经过实际测试已被证实有效,本人所编写的Delegate类中的sizeHint函数实现方式如下:

复制代码
 /// \reimp

    
 QSize MyDelegate::sizeHint ( const QStyleOptionViewItem & option,
    
              const QModelIndex & index ) const
    
 {
    
     QSize size = QItemDelegate::sizeHint(option, index);
    
     size.setHeight( size.height() + 4 );
    
     return size;
    
 }
    
    
    
    
    AI写代码cpp

2. 第二种途径是在ItemModel的data方法中

全部评论 (0)

还没有任何评论哟~