0

私はQTreeViewでQFileSystemモデルを使用しています.このようにQFileSystemモデルをサブクラス化することでテキストを変更できます...

QVariant customFileSystemModel::headerData(int section,
                                           Qt::Orientation orientation,
                                           int role) const
{

    switch(role)
    {

    case(Qt::DisplayRole):
    {
        return QString("YourText");
    }

    case(Qt::TextAlignmentRole):
    {
        return Qt::AlignLeading;
    }


    default:{}
    }

    return QFileSystemModel::headerData(section, orientation,role);

}

しかし、ヘッダー テキストの先頭のスペースを削除することはできません。その方法を提案できますか。

ここに画像の説明を入力

4

1 に答える 1

1

簡単にはできないと思います。これは間違いなくモデルの範囲内ではありません。これは、選択したスタイルの問題です。スタイルシートで何かできるかもしれません。または、QTreeView から QHeaderView を変更することもできます。最悪の場合、QHeaderView をサブクラス化し、ラベルの描画方法をオーバーライドする必要があります。でも、そこまでする必要はないと思います。

于 2013-08-13T10:51:28.137 に答える