QTreeWidgetItem Class
QTreeWidgetItemクラスは、QTreeWidget コンビニエンスクラスで使用するアイテムを提供します。詳細...
Header: | #include <QTreeWidgetItem> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
パブリック型
enum | ChildIndicatorPolicy { ShowIndicator, DontShowIndicator, DontShowIndicatorWhenChildless } |
enum | ItemType { Type, UserType } |
パブリック関数
QTreeWidgetItem(int type = Type) | |
QTreeWidgetItem(QTreeWidget *parent, int type = Type) | |
QTreeWidgetItem(QTreeWidgetItem *parent, int type = Type) | |
QTreeWidgetItem(const QStringList &strings, int type = Type) | |
QTreeWidgetItem(QTreeWidget *parent, QTreeWidgetItem *preceding, int type = Type) | |
QTreeWidgetItem(QTreeWidget *parent, const QStringList &strings, int type = Type) | |
QTreeWidgetItem(QTreeWidgetItem *parent, QTreeWidgetItem *preceding, int type = Type) | |
QTreeWidgetItem(QTreeWidgetItem *parent, const QStringList &strings, int type = Type) | |
QTreeWidgetItem(const QTreeWidgetItem &other) | |
virtual | ~QTreeWidgetItem() |
void | addChild(QTreeWidgetItem *child) |
void | addChildren(const QList<QTreeWidgetItem *> &children) |
QBrush | background(int column) const |
Qt::CheckState | checkState(int column) const |
QTreeWidgetItem * | child(int index) const |
int | childCount() const |
QTreeWidgetItem::ChildIndicatorPolicy | childIndicatorPolicy() const |
virtual QTreeWidgetItem * | clone() const |
int | columnCount() const |
virtual QVariant | data(int column, int role) const |
Qt::ItemFlags | flags() const |
QFont | font(int column) const |
QBrush | foreground(int column) const |
QIcon | icon(int column) const |
int | indexOfChild(QTreeWidgetItem *child) const |
void | insertChild(int index, QTreeWidgetItem *child) |
void | insertChildren(int index, const QList<QTreeWidgetItem *> &children) |
bool | isDisabled() const |
bool | isExpanded() const |
bool | isFirstColumnSpanned() const |
bool | isHidden() const |
bool | isSelected() const |
QTreeWidgetItem * | parent() const |
virtual void | read(QDataStream &in) |
void | removeChild(QTreeWidgetItem *child) |
void | setBackground(int column, const QBrush &brush) |
void | setCheckState(int column, Qt::CheckState state) |
void | setChildIndicatorPolicy(QTreeWidgetItem::ChildIndicatorPolicy policy) |
virtual void | setData(int column, int role, const QVariant &value) |
void | setDisabled(bool disabled) |
void | setExpanded(bool expand) |
void | setFirstColumnSpanned(bool span) |
void | setFlags(Qt::ItemFlags flags) |
void | setFont(int column, const QFont &font) |
void | setForeground(int column, const QBrush &brush) |
void | setHidden(bool hide) |
void | setIcon(int column, const QIcon &icon) |
void | setSelected(bool select) |
void | setSizeHint(int column, const QSize &size) |
void | setStatusTip(int column, const QString &statusTip) |
void | setText(int column, const QString &text) |
(since 6.4) void | setTextAlignment(int column, Qt::Alignment alignment) |
void | setToolTip(int column, const QString &toolTip) |
void | setWhatsThis(int column, const QString &whatsThis) |
QSize | sizeHint(int column) const |
void | sortChildren(int column, Qt::SortOrder order) |
QString | statusTip(int column) const |
QTreeWidgetItem * | takeChild(int index) |
QList<QTreeWidgetItem *> | takeChildren() |
QString | text(int column) const |
int | textAlignment(int column) const |
QString | toolTip(int column) const |
QTreeWidget * | treeWidget() const |
int | type() const |
QString | whatsThis(int column) const |
virtual void | write(QDataStream &out) const |
virtual bool | operator<(const QTreeWidgetItem &other) const |
QTreeWidgetItem & | operator=(const QTreeWidgetItem &other) |
保護された関数
void | emitDataChanged() |
関連する非メンバー
QDataStream & | operator<<(QDataStream &out, const QTreeWidgetItem &item) |
QDataStream & | operator>>(QDataStream &in, QTreeWidgetItem &item) |
詳細説明
ツリーウィジェットアイテムは、ツリーウィジェットの情報の行を保持するために使用されます。行には通常いくつかの列データが含まれ、各列にはテキストラベルとアイコンを含めることができます。
QTreeWidgetItem クラスは、Qt 3 の QListViewItem クラスに代わる便利なクラスです。これは、QTreeWidget クラスで使用するアイテムを提供します。
アイテムは通常、QTreeWidget (トップレベルのアイテムの場合)またはQTreeWidgetItem(ツリーの下位レベルのアイテムの場合)のいずれかを親として構築されます。例えば、以下のコードでは、世界の都市を表すトップレベルのアイテムを作成し、子アイテムとしてオスロのエントリを追加しています:
QTreeWidgetItem *cities = new QTreeWidgetItem(treeWidget); cities->setText(0, tr("Cities")); QTreeWidgetItem *osloItem = new QTreeWidgetItem(cities); osloItem->setText(0, tr("Oslo")); osloItem->setText(1, tr("Yes"));
項目を作成するときに、後に続く項目を指定することで、特定の順序で項目を追加することができます:
QTreeWidgetItem *planets = new QTreeWidgetItem(treeWidget, cities); planets->setText(0, tr("Planets"));
アイテムの各列は、setBackground() 関数で設定される独自の背景ブラシを持つことができます。現在の背景ブラシはbackground() で確認できます。各列のテキスト・ラベルは、独自のフォントとブラシでレンダリングできます。これらはsetFont() とsetForeground() 関数で指定し、font() とforeground() で読み込む。
トップレベル項目とツリーの下層にある項目の主な違いは、トップレベル項目にはparent() がないことです。この情報はアイテムの違いを見分けるために使用でき、ツリーからアイテムを挿入したり削除したりする際に知っておくと便利です。アイテムの子は、takeChild() で削除でき、insertChild() 関数で子リストの指定されたインデックスに挿入できます。
デフォルトでは、アイテムは有効で、選択可能で、チェック可能で、ドラッグ・アンド・ドロップ操作のソースにすることができます。各項目のフラグは、適切な値を指定してsetFlags() を呼び出すことで変更できます (Qt::ItemFlags を参照)。チェック可能な項目は、setCheckState() 関数でチェックしたり外したりできます。対応するcheckState() 関数は、その項目が現在チェックされているかどうかを示します。
サブクラス化
カスタム項目を提供するためにQTreeWidgetItemをサブクラス化する場合、標準項目と区別できるように、それらのために新しい型を定義することが可能です。この機能を必要とするサブクラスのコンストラクタは、UserType 以上の新しい型の値でベースクラスのコンストラクタを呼び出す必要があります。
QTreeWidget,QTreeWidgetItemIterator,モデル/ビュー・プログラミング,QListWidgetItem,QTableWidgetItemも参照 。
メンバ型のドキュメント
enum QTreeWidgetItem::ChildIndicatorPolicy
定数 | 値 | 説明 |
---|---|---|
QTreeWidgetItem::ShowIndicator | 0 | 展開と折りたたみのコントロールは、たとえ子供がいない場合でも、このアイテムに対して表示されます。 |
QTreeWidgetItem::DontShowIndicator | 1 | 展開と折りたたみのコントロールは、たとえ子供がいても決して表示されない。ノードが強制的に開かれている場合、ユーザーはアイテムを展開または折りたたむことができません。 |
QTreeWidgetItem::DontShowIndicatorWhenChildless | 2 | アイテムに子がある場合、展開と折りたたみのコントロールは表示されます。 |
enum QTreeWidgetItem::ItemType
この列挙型は、ツリーウィジェットアイテムを記述するために使用される型を記述します。
定数 | 値 | 説明 |
---|---|---|
QTreeWidgetItem::Type | 0 | ツリーウィジェットアイテムのデフォルトタイプ。 |
QTreeWidgetItem::UserType | 1000 | カスタムタイプの最小値。UserType 以下の値は Qt によって予約されています。 |
QTreeWidgetItem のサブクラスで新しいユーザータイプを定義して、カスタムアイテムが特別に扱われるようにすることができます。
type()も参照してください 。
メンバ関数 ドキュメント
[explicit]
QTreeWidgetItem::QTreeWidgetItem(int type = Type)
指定されたtype のツリーウィジェットアイテムを構築する。アイテムはツリーウィジェットに挿入されなければなりません。
type()も参照 。
[explicit]
QTreeWidgetItem::QTreeWidgetItem(QTreeWidget *parent, int type = Type)
指定されたtype のツリーウィジェット項目を構築し、指定されたparent の項目に追加する。
type() も参照 。
[explicit]
QTreeWidgetItem::QTreeWidgetItem(QTreeWidgetItem *parent, int type = Type)
ツリーウィジェット項目を構築し、指定されたparent に追加します。
type() も参照 。
[explicit]
QTreeWidgetItem::QTreeWidgetItem(const QStringList &strings, int type = Type)
指定されたtype のツリー・ウィジェット・アイテムを構築します。この項目は、ツリー・ウィジェットに挿入する必要があります。指定されたstrings のリストは、アイテムの各列のアイテムテキストとして設定されます。
type()も参照 。
QTreeWidgetItem::QTreeWidgetItem(QTreeWidget *parent, QTreeWidgetItem *preceding, int type = Type)
指定されたtype のツリーウィジェットアイテムを構築し、preceding アイテムの後に指定されたparent に挿入する。
type()も参照 。
QTreeWidgetItem::QTreeWidgetItem(QTreeWidget *parent, const QStringList &strings, int type = Type)
指定されたtype のツリーウィジェット項目を構築し、それを指定されたparent の項目に追加する。指定されたstrings のリストは、アイテムの各列のアイテムテキストとして設定されます。
type()も参照 。
QTreeWidgetItem::QTreeWidgetItem(QTreeWidgetItem *parent, QTreeWidgetItem *preceding, int type = Type)
preceding 子アイテムの後にparent に挿入される、指定されたtype のツリー・ウィジェット・アイテムを構築します。
type() も参照 。
QTreeWidgetItem::QTreeWidgetItem(QTreeWidgetItem *parent, const QStringList &strings, int type = Type)
ツリーウィジェットアイテムを構築し、与えられたparent に追加します。与えられたstrings のリストは、アイテムの各カラムのアイテムテキストとして設定されます。
type()も参照 。
QTreeWidgetItem::QTreeWidgetItem(const QTreeWidgetItem &other)
other type() と () はコピーされないことに注意。treeWidget
この関数は、clone() を再実装するときに便利です。
[virtual noexcept]
QTreeWidgetItem::~QTreeWidgetItem()
このツリー・ウィジェット・アイテムを破棄します。
アイテムは、それが追加されたQTreeWidgets から削除されます。これにより、いつでもアイテムを安全に削除できます。
void QTreeWidgetItem::addChild(QTreeWidgetItem *child)
child アイテムを子リストに追加します。
insertChild() およびtakeChild()も参照 。
void QTreeWidgetItem::addChildren(const QList<QTreeWidgetItem *> &children)
指定したchildren のリストを項目に追加します。
insertChildren() およびtakeChildren()も参照 。
QBrush QTreeWidgetItem::background(int column) const
指定したcolumn の背景の描画に使用したブラシを返します。
setBackground() およびforeground() も参照 。
Qt::CheckState QTreeWidgetItem::checkState(int column) const
指定されたcolumn のラベルのチェック状態を返します。
setCheckState() およびQt::CheckState も参照 。
QTreeWidgetItem *QTreeWidgetItem::child(int index) const
指定されたindex にある項目を、その項目の子のリストで返します。
parent() も参照 。
int QTreeWidgetItem::childCount() const
子アイテムの数を返します。
QTreeWidgetItem::ChildIndicatorPolicy QTreeWidgetItem::childIndicatorPolicy() const
項目インジケータ・ポリシーを返します。このポリシーは、ツリー・ブランチの展開/折りたたみインジケータを表示するタイミングを決定します。
setChildIndicatorPolicy() も参照して ください。
[virtual]
QTreeWidgetItem *QTreeWidgetItem::clone() const
項目とその子のディープコピーを作成します。
int QTreeWidgetItem::columnCount() const
項目の列数を返します。
[virtual]
QVariant QTreeWidgetItem::data(int column, int role) const
アイテムのcolumn とrole の値を返します。
setData()も参照して ください。
[protected]
void QTreeWidgetItem::emitDataChanged()
このアイテムに関連付けられたモデルが、このアイテムに対してdataChanged() シグナルを発するようにします。
通常、この関数を呼び出す必要があるのは、QTreeWidgetItem をサブクラス化し、data() やsetData() を再実装した場合のみです。
setData()も参照 。
Qt::ItemFlags QTreeWidgetItem::flags() const
項目の説明に使用されるフラグを返します。これらのフラグによって、項目をチェック、編集、および選択できるかどうかが決まります。
flags のデフォルト値はQt::ItemIsSelectable |Qt::ItemIsUserCheckable |Qt::ItemIsEnabled |Qt::ItemIsDragEnabled |Qt::ItemIsDropEnabled です。
setFlags()も参照 。
QFont QTreeWidgetItem::font(int column) const
指定されたcolumn のテキストのレンダリングに使用されたフォントを返します。
setFont()も参照 。
QBrush QTreeWidgetItem::foreground(int column) const
指定したcolumn の前景(テキストなど)の描画に使用したブラシを返します。デフォルトのブラシを設定すると、ビューはスタイルのデフォルトの色を使用します。
setForeground() およびbackground()も参照して ください。
QIcon QTreeWidgetItem::icon(int column) const
指定されたcolumn に表示されるアイコンを返します。
setIcon() およびiconSize も参照して ください。
int QTreeWidgetItem::indexOfChild(QTreeWidgetItem *child) const
指定されたchild の子のインデックスを返します。
void QTreeWidgetItem::insertChild(int index, QTreeWidgetItem *child)
子アイテムのリストのindex にchild アイテムを挿入します。
その子がすでに他の場所に挿入されている場合は、再挿入されません。
void QTreeWidgetItem::insertChildren(int index, const QList<QTreeWidgetItem *> &children)
index の項目の子リストに、children の指定されたリストを挿入します。
既にどこかに挿入されている子は挿入されません。
bool QTreeWidgetItem::isDisabled() const
アイテムが無効な場合はtrue
を返し、そうでない場合はfalse
を返します。
setFlags()も参照してください 。
bool QTreeWidgetItem::isExpanded() const
項目が展開されている場合はtrue
を返し、そうでない場合はfalse
を返します。
setExpanded() も参照 。
bool QTreeWidgetItem::isFirstColumnSpanned() const
項目が行のすべての列にまたがっている場合はtrue
を返し、そうでない場合はfalse
を返す。
setFirstColumnSpanned() も参照 。
bool QTreeWidgetItem::isHidden() const
項目が非表示の場合はtrue
を返し、そうでない場合はfalse
を返す。
setHidden() も参照 。
bool QTreeWidgetItem::isSelected() const
項目が選択されている場合はtrue
を返し、そうでない場合はfalse
を返す。
setSelected() も参照 。
QTreeWidgetItem *QTreeWidgetItem::parent() const
項目の親を返します。
child()も参照して ください。
[virtual]
void QTreeWidgetItem::read(QDataStream &in)
ストリームin から項目を読み取ります。これは、単一の項目にのみデータを読み込みます。
write()も参照して ください。
void QTreeWidgetItem::removeChild(QTreeWidgetItem *child)
child で指定された項目を削除します。削除された項目は削除されません。
void QTreeWidgetItem::setBackground(int column, const QBrush &brush)
指定されたcolumn のラベルの背景ブラシを、指定されたbrush に設定する。デフォルトのブラシを設定すると、ビューはスタイルのデフォルトの色を使用するようになります。
注意: Qt スタイルシートがsetBackground() と同じウィジェットで使用されている場合、設定が衝突するとスタイルシートが優先されます。
background() およびsetForeground()も参照してください 。
void QTreeWidgetItem::setCheckState(int column, Qt::CheckState state)
指定されたcolumn チェック状態のアイテムをstate に設定します。
checkState() も参照 。
void QTreeWidgetItem::setChildIndicatorPolicy(QTreeWidgetItem::ChildIndicatorPolicy policy)
項目インジケータpolicy を設定します。このポリシーは、ツリー分岐の展開/折りたたみインジケータを表示するタイミングを決定します。既定値はDontShowIndicatorWhenChildless です。
childIndicatorPolicy() も参照して ください。
[virtual]
void QTreeWidgetItem::setData(int column, int role, const QVariant &value)
アイテムのcolumn とrole の値を、指定されたvalue に設定します。
role は、value で指定されたデータの型を記述し、Qt::ItemDataRole enum で定義されます。
注意: デフォルトの実装では、Qt::EditRole とQt::DisplayRole は同じデータを指すものとして扱われます。
data()も参照してください 。
void QTreeWidgetItem::setDisabled(bool disabled)
disabled が真の場合、その項目を無効にし、そうでない場合、その項目を有効にします。
isDisabled() およびsetFlags() も参照 。
void QTreeWidgetItem::setExpanded(bool expand)
expand が true の場合は項目を展開し、そうでない場合は項目を折りたたみます。
警告: この関数を呼び出す前に、QTreeWidgetItem をQTreeWidget に追加する必要があります。
isExpanded()も参照 。
void QTreeWidgetItem::setFirstColumnSpanned(bool span)
span が true の場合は、最初のセクションをすべての列にまたがるように設定します。それ以外の場合は、すべての項目のセクションを表示します。
isFirstColumnSpanned() も参照 。
void QTreeWidgetItem::setFlags(Qt::ItemFlags flags)
項目のフラグを、与えられたflags に設定します。これらのフラグによって、項目を選択または変更できるかどうかが決まります。これは、項目を無効にするためによく使われます。
flags() も参照 。
void QTreeWidgetItem::setFont(int column, const QFont &font)
指定されたcolumn のテキスト表示に使用されるフォントを、指定されたfont に設定します。
font()、setText()、setForeground() も参照 。
void QTreeWidgetItem::setForeground(int column, const QBrush &brush)
与えられたcolumn のラベルの前景ブラシを、指定されたbrush に設定します。
foreground() およびsetBackground()も参照 。
void QTreeWidgetItem::setHidden(bool hide)
hide が true の場合は項目を非表示にし、そうでない場合は項目を表示します。
注意: アイテムが現在ビューにない場合、この関数の呼び出しは何の効果も持ちません。特に、アイテムに対してsetHidden(true)
を呼び出してからそれをビューに追加すると、アイテムが表示されます。
isHidden()も参照 。
void QTreeWidgetItem::setIcon(int column, const QIcon &icon)
与えられたcolumn に表示されるアイコンをicon に設定する。
icon()、setText()、iconSizeも参照 。
void QTreeWidgetItem::setSelected(bool select)
アイテムの選択状態をselect に設定します。
isSelected()も参照して ください。
void QTreeWidgetItem::setSizeHint(int column, const QSize &size)
与えられたcolumn のツリーアイテムのサイズヒントをsize に設定します。サイズヒントが設定されていないか、size が無効な場合、アイテムデリゲートはアイテムデータに基づいてサイズヒントを計算します。
sizeHint()も参照してください 。
void QTreeWidgetItem::setStatusTip(int column, const QString &statusTip)
指定されたcolumn のステータスヒントを、指定されたstatusTip に設定します。 この機能を動作させるには、QTreeWidget マウストラッキングを有効にする必要があります。
statusTip()、setToolTip()、setWhatsThis() も参照 。
void QTreeWidgetItem::setText(int column, const QString &text)
与えられたcolumn に表示されるテキストを、与えられたtext に設定する。
text()、setFont() およびsetForeground() も参照 。
[since 6.4]
void QTreeWidgetItem::setTextAlignment(int column, Qt::Alignment alignment)
与えられたcolumn のラベルのテキスト配置を、指定されたalignment に設定します。
この関数は Qt 6.4 で導入されました。
textAlignment()も参照してください 。
void QTreeWidgetItem::setToolTip(int column, const QString &toolTip)
与えられたcolumn のツールチップをtoolTip に設定します。
toolTip()、setStatusTip()、setWhatsThis()も 参照。
void QTreeWidgetItem::setWhatsThis(int column, const QString &whatsThis)
与えられたcolumn の "What's This?" ヘルプをwhatsThis に設定します。
whatsThis()、setStatusTip()、setToolTip()も参照 。
QSize QTreeWidgetItem::sizeHint(int column) const
指定されたcolumn (QSize を参照) のツリー項目に設定されたサイズヒントを返します。
setSizeHint() も参照 。
void QTreeWidgetItem::sortChildren(int column, Qt::SortOrder order)
与えられたorder を使用して、アイテムの子を、与えられたcolumn の値でソートします。
注意: この関数は、アイテムがQTreeWidget に関連付けられていない場合、何もしません。
QString QTreeWidgetItem::statusTip(int column) const
与えられたcolumn の内容のステータスチップを返す。
setStatusTip()も参照 。
QTreeWidgetItem *QTreeWidgetItem::takeChild(int index)
index の項目を削除してそれを返し、そうでない場合は 0 を返します。
QList<QTreeWidgetItem *> QTreeWidgetItem::takeChildren()
子のリストを削除してそれを返し、そうでない場合は空のリストを返します。
QString QTreeWidgetItem::text(int column) const
指定されたcolumn のテキストを返します。
setText()も参照 。
int QTreeWidgetItem::textAlignment(int column) const
指定されたcolumn 内のラベルのテキスト配置を返します。
注意: この関数は、歴史的な理由により int を返します。Qt 7 ではQt::Alignment を返すように修正される予定です。
setTextAlignment() およびQt::Alignmentも参照してください 。
QString QTreeWidgetItem::toolTip(int column) const
与えられたcolumn のツールチップを返します。
setToolTip()も参照して ください。
QTreeWidget *QTreeWidgetItem::treeWidget() const
アイテムを含むツリー・ウィジェットを返します。
int QTreeWidgetItem::type() const
QTreeWidgetItem コンストラクタに渡された型を返します。
QString QTreeWidgetItem::whatsThis(int column) const
指定されたcolumn の内容に関する "What's This?" ヘルプを返します。
setWhatsThis()も参照してください 。
[virtual]
void QTreeWidgetItem::write(QDataStream &out) const
項目をストリームout に書き込みます。これは、1 つの項目のデータのみを書き込みます。
read() も参照して ください。
[virtual]
bool QTreeWidgetItem::operator<(const QTreeWidgetItem &other) const
項目のテキストがother 項目のテキストより小さい場合はtrue
を返し、そうでない場合はfalse
を返します。
QTreeWidgetItem &QTreeWidgetItem::operator=(const QTreeWidgetItem &other)
other のデータとフラグをこの項目に割り当てます。type() とtreeWidget() はコピーされないことに注意。
この関数は、clone() を再実装するときに便利である。
関連する非メンバ
QDataStream &operator<<(QDataStream &out, const QTreeWidgetItem &item)
ツリー・ウィジェット項目item をストリームout に書き込みます。
この演算子はQTreeWidgetItem::write() を使用します。
Qt データ型のシリアライズ」も参照して ください。
QDataStream &operator>>(QDataStream &in, QTreeWidgetItem &item)
ツリー・ウィジェット・アイテムをストリームin からitem に読み込みます。
この演算子はQTreeWidgetItem::read() を使用します。
Qt データ型のシリアライズ」も参照して ください。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。