タブ ページに表示されるリストを作成しました。サブタイトル付きのリスト項目: 会話 (アイコン + テキストを表示する項目) を表示すると仮定します。ユーザーがそのリスト項目のテキストを変更できるようにするボタンがあります。
conversation.text : ""
しかし、これを使用しているときはいつでも、Qt は「会話が定義されていません」というエラーを表示しますが、明らかに下で定義しているのに、何らかの理由でボタンがそれにアクセスしたり表示したりすることができないので、これを克服する方法はありますか?
ListView {
id: conversationList
anchors.fill: parent
model: 1
delegate:
ListItem.Subtitled {
id: conversation
icon: Qt.resolvedUrl("avatar_contacts_list.png")
}
}
ありがとう :)
答え1
まず第一に、常に完全なコード例を示してください。現状では、質問に答えるには多くの推測が必要です...
リストビュー内のアイテムに ID でアクセスしたいのだと思います。特別なケースでは、アイテムは 1 つしかないようです ( と書いたため)。model: 1
ただし、一般には N 個の要素があります。あなたのロジックに基づくと、すべてが同じデリゲートに基づいているため、すべて同じ ID を持つことになります。ただし、これは不可能であり、デリゲートの ID はアイテム自体でのみ使用できます。
アイテムが 1 つしかないのに、なぜ を使用するのでしょうListView
か。 単に 自体を使用しないのはなぜでしょうかListItem.Subtitled
。そうすれば、インデントするときに id を使用できます。