問題タブ [qtreewidgetitem]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - QTreeWidgetItem の一部の背景またはテキストの色を変更するにはどうすればよいですか
C++ で Qt アプリケーションを開発しています。アプリケーションは、システム内の各エンティティのサブツリーを持つツリー ウィジェットを中心にしています。エンティティには、ユーザーが指定できる「ハイライト」色があり、特定のエンティティに関連するイベントを強調表示します。エンティティ ルート ツリー アイテムの背景色は、エンティティのハイライト カラーです。エンティティに関連するイベントが発生した場合、エンティティに一致する識別子の背景色をエンティティのハイライト色と同じにしたいと考えています。これは、私がやろうとしていることの大まかなモックアップです。疑似 HTML タグで色と必要な場所を示しています。
私が理解しているように、これは QTreeWidgetItem では直接可能ではありません。カスタム ペインティングを処理するツリー アイテムのデリゲートを提供できることはわかっていますが、Qt の QStyle 部分に精通していません。当社のお客様は、XP および Win7 でこのアプリケーションを使用し、WindowsClassic スタイルが有効になっている場合とされていない場合があります。そのため、すべての QStyle の可能性を処理することは非常に複雑になる可能性があります。ツリー項目の描画ニーズのすべての潜在的な部分を処理する必要なく、QStyle に必要な背景色で必要なテキストの部分を描画させるショートカットはありますか?
qt - QTreewidget の QPushbutton のクリック イベントで行のインデックスを取得する方法。
QTreeWidget の各行に QPushbutton があります。QPushbutton のクリック イベントで行のインデックスを取得したい。私はこれを使用しています:
このクリックイベントで、クリックされたボタンの行のインデックスを取得したいですか? ありがとう、アシッシュ
list - QtableWidget 列にアイテムのリストを追加
QtreeWidget 列にアイテムのリストを挿入しようとしています。各データは各列に挿入されるため、列と同じ数のアイテムがあります。MVC アーキテクチャを使用していますが、挿入に失敗しました!
これは私の見解です:
これは私のモデルです:
これが私のコントローラーです:
誰かが間違っていることを見つけるのを手伝ってくれますか?
UDPDATE
アイテムのリストを QtreeWidget に追加する方法をビューで変更しました。これは私にとってより論理的だと思われます
私の新しい見解:
しかし、今、デバッグする malloc_error_break があります。これは、アイテムを割り当てていないためだと思いますが、Python では、アイテムのリストで QTreeWidgetItem *items= new QTreeWidgetItem() を実行するにはどうすればよいですか??
c++ - QTreeWidget C ++でメモリから個々のアイテムを展開する
私は Qt を持っており、QTreeWidget
展開されたヘッダー項目の状態を保存しようとしています。これにより、ツリーを新しい情報で更新すると、以前に展開された項目を再度展開できるようになります。
itemExpanded
orが出力されるたびに、itemCollapsed
signal
それを a でキャッチし、その特定のアイテムslot
のメンバーに保存して、boolean
展開されたものが現在true
またはであるかどうかを表しfalse
ます。これは私の記憶です。
ツリーをリフレッシュするときは、ツリーを完全にクリアします
次に、次を使用してすべてのヘッダーを折りたたみます
ここで、どのアイテムが展開されたかを復元しboolean
、アイテムが以前に展開されたか折りたたまれていたかを表すそれぞれを使用して展開された状態に設定したいと思います
私boolean
だけからアイテムのインデックスを取得する方法が特にわかりません。
私はそう思ったでしょう
位置 0のインデックスを取得し、位置 0に関連付けられたtoplevelitem
my を使用して、アイテムを展開するかどうかを決定できますか?boolean
これは、ツリー内の各アイテムを表す「ブール値」ごとに実行したいという私の問題も解決しません。
前もって感謝します。
qt - 特定の QTreeWidgetItem に QItemDelegate を設定する
QItemDelegate
特定の にを設定することは可能QTreeWidgetItem
ですか? QTreeWidgetItem
の一部を特定の色で着色する必要があります。
私たちが持っているようにそれは可能QAbstractItemView::setItemDelegateForRow
だと思いますが、方法がわかりません。QAbstractItemView::setItemDelegateForRow
内の子行にカスタム デリゲートを設定する必要があるため、使用できませんQTreeWidget
。
誰かがその解決策を知っていますか?
c++ - QTreeWigetItem - クリックを管理して項目テキストの名前を直接変更する方法
QTreeView を作成しました。これは QTreeWidgetItem によってファイルされます。私のアプリケーションは一種のファイル ブラウザです。
ViewTree は次のように定義されます。
アクションについて以下に定義されているように、「フォルダーの追加」ボタンを追加しました。
// MyTree->edit(selectedItem());
ご覧のとおり、デフォルトでは、mtp FS システム上に「NewFolder」を作成します。
フォルダを作成する前にやりたいことは、「NewFolder」の名前をユーザーが望むものに変更できるようにしたいです。テキストを入力するためのポップアップを作成したくありません。私が欲しいのは、「一種の名前変更」動作です。フォルダがツリービューに表示され、新しいフォルダが選択され、テキストを直接変更できるようになります。フォルダ名を 1 回クリックしたときの Finder のように、フォルダ名が選択され、ユーザーはポップアップなしで Finder で名前を変更できます。
ありがとう