gpt4 book ai didi

c++ - 如何以这种方式对齐 qtreewidget 列中的文本 : "...qtreewidgetitemdata" instead of "qtreewidgetitemdata..."?

转载 作者:行者123 更新时间:2023-11-30 04:49:30 24 4
gpt4 key购买 nike

如何以这种方式对齐 qtreewidget 的第 1 列中的数据:

|Column1 |Column2|
|+...abcd|efgh |
|+...ijkl|mnop |

代替

|Column1 |Column2|
|+xyab...|efgh |
|+pqij...|mnop |

最佳答案

您必须使用委托(delegate)建立省略模式:

#include <QtWidgets>

class ElideLeftDelegate: public QStyledItemDelegate
{
public:
using QStyledItemDelegate::QStyledItemDelegate;
protected:
void initStyleOption(QStyleOptionViewItem *option, const QModelIndex &index) const{
QStyledItemDelegate::initStyleOption(option, index);
option->textElideMode = Qt::ElideLeft;
}
};

int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QTreeWidget w;
w.setItemDelegateForColumn(0, new ElideLeftDelegate{&w});
w.setColumnCount(2);
new QTreeWidgetItem(&w, {"abcdefghijklmnopqrdstuvwxyz", "AVCDEFGHIJKLMNOPQRSTUVWXYZ"});
new QTreeWidgetItem(&w, {"AVCDEFGHIJKLMNOPQRSTUVWXYZ", "abcdefghijklmnopqrdstuvwxyz"});
w.show();
return a.exec();
}

enter image description here

关于c++ - 如何以这种方式对齐 qtreewidget 列中的文本 : "...qtreewidgetitemdata" instead of "qtreewidgetitemdata..."?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55378540/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com