5
QListViewには5個のアイテムがあります。私のQListViewで(アメリカ、カナダ、デンマーク、エジプト、フィンランド)と言ってください。今度は、という共通の項目を、すべての項目に対してヘッダとして設定したいと考えています。ヘッダをQListViewに設定するにはどうしたらいいですか?助けてください。ヘッダーをQListViewに設定する方法
QListViewには5個のアイテムがあります。私のQListViewで(アメリカ、カナダ、デンマーク、エジプト、フィンランド)と言ってください。今度は、という共通の項目を、すべての項目に対してヘッダとして設定したいと考えています。ヘッダをQListViewに設定するにはどうしたらいいですか?助けてください。ヘッダーをQListViewに設定する方法
まあ、直接することはできませんが、これを行うことができます。
mHb = new QHBoxLayout;
{
QVBoxLayout *tInnerVB = new QVBoxLayout;
{
QLabel *tHeader = new QLabel("Team List");
tHeader->setFont(QFont("FontAwesome"));
tInnerVB->addWidget(tHeader);
mTeamViewModel->setStringList(BDatabase::instance()->getTeamList());
mLeTeamList->setModel(mTeamViewModel);
tInnerVB->addWidget(mLeTeamList);
}
mHb->addLayout(tInnerVB);
tInnerVB = new QVBoxLayout;
{
QLabel *tHeader = new QLabel("Team Members");
tHeader->setFont(QFont("FontAwesome"));
tInnerVB->addWidget(tHeader);
mMembersViewModel->setStringList(QStringList());
mLeTeamMembers->setModel(mMembersViewModel);
tInnerVB->addWidget(mLeTeamMembers);
}
mHb->addLayout(tInnerVB);
}
出力は次のように次のようになります。また、あなたはラベルによって向き、アライメントや他のものを変更することができます
。良いコーディング:)
QListViewのドキュメントは次のように述べています:*このビューは水平または垂直のヘッダーを表示しません。水平ヘッダーを持つ項目のリストを表示するには、代わりにQTreeViewを使用します。* –
まず、QListViewを使用している場合、モデルを使用します。モデルを使用している場合は、ヘッダーを与えるために、サブクラス化するだけでメンバ関数 'headerData(int、Qt :: Orientation、const QVariant&、int)'がオーバーロードされます。 – Marcus