問題タブ [pyside2]

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 に答える
1080 参照

python - Qlistview で値のインデックスを見つける

私は PySide2 を使用しており、QListView で値を検索し、その行を選択したいと考えています。.findText(string_to_search_for)QComboBox でできるように。Qlistview で値を検索し、インデックスを返すにはどうすればよいですか?

いくつかの追加情報:

私の QListView のモデルは、私が書いた QAbstractTableModel の実装です。モデルにはデータベースからのデータが入力されます。最初の列は ID、2 番目の列はデータベース アイテムの名前です。QListView は 2 列目のみを表示しています。これは QTableModel の私のコードです。

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

qml - Pyside 2 で QtQuick Controls 2 を使用できない

私は設定しました:

Python 3.5.3 仮想環境 Pyside 2 コミット fafd92f428d51bdd56c90a73149c441773dd9155 をコンパイルしました (最新の 2 つのコミットでは qrandomgenerator ファイルが見つからないという問題があったため)。

コンパイルは、Qt 5.9.3、MSVC2015 x64、および cmake 3.10.1 で行われました。

QML、より具体的には Material Style の使用を開始するためにこれを設定しようとしています。ただし、アプリケーションを実行すると、QML が QtQuick.Controls 2.0 以降をインポートすると、engine.rootObjects() が空のリストを返すようです。QtQuick.Controls バージョン 1.0 ~ 1.5 をインポートできます。コンパイル時に何かを見逃しましたか? または私のコードに何か問題がありますか?

コードは次のとおりです。

パイソン

QML

Qt Quick Controls 2のドキュメントからこれらのバージョン番号を取得しました。

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

python - QItemDelegate チェックボックス

そのため、カスタム ツールには Maya で python と PySide2 を使用しています。

モデル (QTableModel) と QTableView があります。

モデルのすべての行には、一連の情報とチェックボックスがあります。

QItemDelegate を実行して、チェック ボックスとして使用する必要がありました。それは結構です。そのデリゲートがチェックされているかどうかを取得するのに苦労しています。

モデルを反復処理してデータを取得します(ノードの Maya シーン内に保存するため)。

そして、すべての行の最初の項目がチェック ボックス (デリゲート) である場合があります。最終的なデータ配列では、実際の QItemDelegate オブジェクトを取得することになりますが、その状態をチェック済みかどうかに関係なく取得したかったのですが、 isChecked() メソッドがありません。

それを取得する方法についてのアイデアはありますか?

どうもありがとうございました!

######## 編集 1

したがって、モデルにはコメントに記載されているフラグがあります。

私が告白するように、私はデリゲートを間違ってやっていると思います、私はこのスニペットをオンラインで見つけ、それを理解しようとしています....しかし、それは次のようになります:

次に、TableView で:

それは役に立ちますか?(Maya 2017 をお持ちの場合は、コード全体を提供できます...これを学習演習として使用しているので、これは一種の混乱です!

ありがとうございました。

############ 編集 2

テーブル ビュー:

モデル:

デリゲートは上記の編集 1 にあります。

次に、このモデルを開始するには、まだサイクルとヘッダーが必要だと思います。

これでうまくいくことを願っています。

ありがとうございました。

##### 編集 3

モデルに次のカスタム メソッドがあります。

モデルをディクショナリに変換するために使用するため、モデルをシリアル化し、Autodesk Maya 内のノードの文字列アトリビュートとして保存できます。問題なく実行されますが、最初の列から取得する情報は常に None です。別の方法で取得する必要がありますか?

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

python - QAbstratctTableModel - removeRows

コードはほぼ完成です。契約は次のとおりです。

python と PySide です。QAbstractTableModel と QTableView があります。

行を正しく削除できません。問題は行のインデックスのどこかにあると思います。そのうちの1つを削除します...

ここに私が使用するボタンデリゲートがあります:

これが cellButtonClicked メソッドです。テーブル ビューの下にあります。

モデルのremoveRowメソッドは次のとおりです。

主に問題は、行を削除してもモデルのインデックスが更新されないことだと思います。そのため、削除ボタンをもう一度クリックすると、モデルのrowCountと一致しなくなったインデックスでremoveRow()が開始されるため、モデルデータから削除する配列を構築できません。

意味がありましたか?さらにコードが必要な場合は、必要なものを教えてください。