問題タブ [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.

0 投票する
1 に答える
870 参照

qt - ドロップ イベント Pyside で QTreeWidgetItem オブジェクトを取得する

QTreeWidget の別の部分にドロップされた QTreeWidgetItem からのデータが必要なプログラムを作成しています。ドラッグ アンド ドロップは完全に機能しており、eventFilter で QEvent.Drop タイプのイベントを取得できます。しかし、ドロップされている実際のオブジェクトや、その他のデータを取得できません。

ドロップされているオブジェクトを取得するにはどうすればよいですか?

0 投票する
1 に答える
659 参照

qt - Qt QTreeWidget QComboBox がオンになっている行を取得する方法

QTreeWidgetItems としていくつかの QComboBoxes を持つ QTreeWidget があります。選択した QComboBox の現在の QTreeWidget 行を取得する方法を見つけようとしています。ui->sensorTree は QTreeWidget です。私のツリーは次のようになります。

したがって、QComboBox0 が選択されている場合は、0 を返したいと思います。

アップデート:

これにより、正しい行が得られます。問題は、QComboBox を変更するために行を選択する必要がないことです。必要なのは、QComboBox.indexChanged を接続して、ComboBox がある行と、行内のすべての ComboBoxes の現在の ComboBox テキストを渡すことです。

0 投票する
1 に答える
1407 参照

python - ウィンドウ内で QTreeWidget を構築するためにクラスを呼び出す: 引数 1 に予期しないタイプ 'Ui_MainWindow' があります

ekhumoroから取得したコードを使用して、作成した GUI の xml ファイルからツリーを動的に作成していますが、pyuic4 から生成された _ui.py ファイル内でクラスを呼び出そうとすると、Ui_MainWindow が取得されます予想される引数の代わりにクラスが返されました。

ツリー項目を作成する XmlHandler (私の理解によると):

XmlHandler を使用してウィジェットを作成するクラス:

私は手探りして、GUIでそれを使用しようとしています:

そして、ファイルを実行しようとしたときに発生するエラー:

だから私の質問は次のとおりだと思います:このクラスを呼び出して、UI_MainWindowクラス内で正しい引数を渡すには、親であると想定しているものを呼び出すのではなく?

0 投票する
3 に答える
1679 参照

qt - QTreeWidget の QLabel からスペースを削除する

QTreeWidget のワード ラッピングの問題を回避するために、QTreeWidget に QLabel ウィジェットを追加しました。( QTreeWidgetItem をワードラップする方法を参照してください)。QLabel ウィジェットは、テキストが折り返されると何らかの理由で消えるテキストの周りにスペースがあるように見えます。また、ラベル テキストが空白の場合も表示されません。

QLabel で設定しようとしsetContentsMargin(0,0,0,0)ましたが、うまくいきませんでした。私も試してみsetStyleSheet("border: 0px; margin: 0px; padding: 0px;")ましたが、これも役に立ちませんでした。

スクリーンショット: ツリーのスクリーンショット

QT が単語の周りに間隔バッファーを置くかどうかは、説明の長さに依存することがわかります。ワードラップが有効になっている場合にのみ発生します。さらにいじってみると、説明文字列のスペースに依存していることを示しているようです。文字列にスペースを入れないことで、単語の周りに余分なスペースができなくなります。おそらく、QLabel がワード ラップ プロパティを使用して行っていることと関係があります。

0 投票する
1 に答える
10270 参照

c++ - ドラッグによる子アイテムの並べ替え QTreeWidget

単一のルート ノードと 1 レベルの子ノードのみを表示する QTreeWidget があります。子ノードの並べ替えを許可する必要があります。彼らは決して再親になってはいけません。

これは、 QTreeWidget でアイテムのドラッグを有効にする方法です:

ルート項目は次のように挿入されます:

ビューに子を挿入すると、次のように宣言されます。

この時点で、子アイテムをドラッグして、子アイテムのリストに「再挿入」できます。ルート レベルに移動することもできますが、これは望ましくありません。

QT Creator v3 を使用しているため、QTreeWidget は UI 定義ファイル内にあります。

ここで何か見逃しましたか?

0 投票する
1 に答える
566 参照

python - QTreeWidgetItem の PyQt ランタイム エラー

基になる C/C++ オブジェクトが削除されたときに、よく知られている PyQt ランタイム エラーを回避しようとしています。

http://www.riverbankcomputing.com/pipermail/pyqt/20​​09-April/022809.html

PyQt4 - "RuntimeError: 基になる C/C オブジェクトが削除されました"

PyQt4 ネストされたクラス - 「RuntimeError: 基礎となる C/C++ オブジェクトが削除されました」

PyQt: RuntimeError: ラップされた C/C++ オブジェクトが削除されました

サブクラスのすべてがメソッドを呼び出すsuper()ため、基本クラスが適切に構築されます。

それでも、このエラーが発生し、( a のメソッドを使用して) にQComboBoxウィジェットを追加しているという事実が原因であるかどうか疑問に思っていますが、それを含む として親を設定できません。試してみると、次のエラーが表示されます。QTreeWidgetItemsetItemWidget()QTreeWidgetQTreeWidgetItem

もちろん、コンストラクターで親を省略するか、親QTreeWidgetとして渡すことができますが、正しい親を参照する必要があると思います。

をサブクラスQComboBox化し、サブクラスで に対していくつかの基本的な操作を実行しますが、サブクラス化されQTreeWidgetた のメソッドに入るとすぐに、を含むQComboBox親の基になる C オブジェクトが削除されます (これが、何かを考えている理由です)。の親を設定してください)。QTreeWidgetItemQComboBoxQComboBox

実行時エラーの 10 回中 9 回は、基本クラスが構築されていないことが原因であることを理解しています。しかし、それが除外された場合、他にどのようにエラーが発生するのでしょうか? 正しい親を参照していないことが原因でしょうか?

編集

QComboBox を使用して、新しいコンボボックスが選択されたときに通知します。新たに選択すると、その選択された値が PyXB XML ノードに追加されます。興味深いことに、この問題は、情報を XML ファイルに永続的に格納する PyXB クラス バインディングに値を追加した場合にのみ発生します。つまり、コードのその部分が実行されない場合、エラーは発生しません。コードが PyXB 操作を実行して、XML ノード バインディングに値を追加する場合にのみ発生します...