問題タブ [qlistview]

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

qt - Qt: ドラッグ アンド ドロップを使用して ListView アイテムを並べ替える

ドラッグアンドドロップ用に次のメソッドを実装しました

QListView があり、setIndexWidget() を使用して各モデル インデックスにカスタム ウィジェットを表示しました。ドラッグアンドドロップを使用してリストビュー内のアイテムを配置しようとしていますが、リストビュー内のアイテムが正しく配置されていないため、次のコードを記述しました:-

検索しましたが、適切な解決策が得られませんでした。ありがとう

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

qt4 - Q3ListView / Q3ListViewItemユーティリティを置き換えるにはどうすればよいですか?

残念ながら、Q3ListViewとQ3ListViewItemに大きく依存している古いコードを更新しています。これは、現在は廃止されている小さなヘルパークラスです。

アイテムレイヤーなしでQListViewにデータを入力できるようになったと思いますが、ドキュメントを調べても、それを十分に把握できていません。私が見つけたチュートリアルの1つは、QStandardItemModelにQStandardItemsを入力し、それをモデルとしてQListViewに設定しますが、興味深いと思われるQAbstractListModelクラスにも出くわしました。いくつかの質問が出てきました:

-QListViewは基本的に、それ自体にアイテムが入力されている「モデル」を設定することによって入力されていますか?

-私が持っている古いバージョンでは、Q3ListViewItemは次のようにサブクラス化されています。

現在利用可能なオプションを考慮すると、このアイデアを再実装するための最良の方法は何ですか?

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

qt - indexWidgetsのQListViewにeventFilterをインストールする

いくつかのコンポーネント(コンボボックス、lineEdit、labelsなど)を含むcustomWidgetsがあります。このcustomWidgetはsetIndexWidget(QModelIndex、QWidget)を使用してQListViewに追加されます。私の要件は、customWidgetの任意のコンポーネントをクリックするとQListViewアイテムが取得されることです。選択/フォーカス。

cutomWidgetからQListViewにEventFilterをインストールするにはどうすればよいですか?customWidgetのイベントフィルターをインストールしました。

ありがとう

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

pyqt4 - qlistview で項目をクリックすると、ドラッグ アンド ドロップ後に以前の状態に戻るのはなぜですか?

リスト ビューで項目を並べ替えるドラッグ アンド ドロップを実装しました。すべてのデバッグ出力は、これが適切に機能していることを示しています。ただし、アイテムを再度選択すると、ビューに以前あったものに戻り、選択が解除されると、この変更はモデルでも行われます。
例:

うまくいけば、これは理にかなっています。なぜこれが起こっているのでしょうか?(これは大規模なアプリケーションの一部であるため、コード サンプルは困難です)

編集:これは、コードに対してできる最善のことです。

カスタム リスト ビュー (項目が移動したときにシグナルを発する必要があり、indexesMoved が壊れているように見えるため、カスタム リスト ビューがあります):

それを使用するGUI(qtデザイナーで作成されたカスタムリストビューを備えた単なるフォーム):

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

python - qlistviewでアイテムがドロップされた場所を知る方法は?

カスタム QListView があります。

そして、ドラッグ アンド ドロップ操作の後にアイテムがどこにドロップされたかを本当に知る必要があるので、他のものを適切に更新できます (私のデザインではなく、そのために設計されていない大きなアプリにドラッグ アンド ドロップを入れようとしています)。選択モデルの現在のインデックスと選択は、ドロップされたアイテムに追従しません。それらは効果的に新しいアイテムを選択し、物事を台無しにします。ドロップしたアイテムと一緒に動かす方法はありますか? シグナル indexMoved は、私が望むものとまったく同じように見えますが、決して発火しません。私はそれを間違って使用していますか?別の/より良い方法はありますか?

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

python - Qt.UserRoleを使用してQtQListviewでアイテムを並べ替える方法

QListView指定したフィールドの値を使用して、アイテムの並べ替えに問題があります。

基本的に私がやろうとしていることはこれです:

  1. 写真のコレクションから顔を検出し、QListView
  2. 顔をクラスター化する(画像)
  3. 同じクラスターに属するアイテム(顔画像)を一緒にリストに配置して、ビューを更新します。具体的には、アイテム1、3、5が1つのクラスターにあり、アイテム2、4、6が別のクラスターにある場合、アイテム2、4、6のいずれかが表示される前に、アイテム1、3、5が(任意の順列で)表示される必要があります。またはその逆。

UserRoleこれを行う方法は、リスト内の各フィールドの1つをQStandardItemクラスターラベルにQStandardModel設定してから、これに従ってソートするようにすることUserRoleです。これにより、同じクラスター内のアイテム(つまり、内の同じクラスターラベルを持つアイテムUserRole)が隣り合って表示されます。

アイテムを正常に設定することはできますが、並べ替えの役割をデフォルト(つまり、各面のテキストラベルに従って並べ替える)に設定した場合でもUserRole、で並べ替え関数を呼び出してQStandardModelもアイテムは並べ替えられませんでした。DisplayRole意図されました。

誰かが私のコードの何が問題になっているのか教えてもらえますか、または別の方法を提供できますか?ソートリストをグーグルで検索したところ、 QSortFilterProxyModelで次のリンクが見つかりましたが、Qtを初めて使用するため、状況に適応させることができません。

返信をよろしくお願いします。

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

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

qt - QML : メニューのドロップダウンの問題

図に示すように、QML のドロップダウン機能でさまざまなアイテム コンテナーを取得する方法。

ここに画像の説明を入力

リストビューを使用して以下の実装で要件を試しましたが、同じものを取得できませんでした。以下はスニペットです

上記のアプローチでは、以下に示すようにドロップダウンが表示されますが、これは要件に従っていません。

さまざまなアプローチで試しましたが、適切な作業で正確な要件を達成できませんでした ここに画像の説明を入力

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

qt - QListViewアイテムのドラッグアンドドロップ

これを解決するために私を助けてください....私はQListView左側にとQWidget反対側にあります。でQListView私はを使用していくつかのアイテムを追加しましQStandardItemた。QListView今、私はアイテムを反対側にドラッグアンドドロップしたいと思いますQWidget、そして私はまた同じことをしなければなりませんQWidgetQListViewを使用して、アイテムをそれ自体の中にQListViewドラッグアンドドロップできます

これは、QListView内だけで正常に機能しています。QListViewアイテムを他のウィジェットにドラッグアンドドロップしたい。これどうやってするの?私は次のようなイベントを処理する必要があることを知っています

こんな感じでやってみました

qDebug()を試してみたところ、アイテムを自分からドラッグしてQListViewドロップすると、QWidget「アイテムがドロップ されました」という出力が表示されます。しかし、私は私の正確なQListViewアイテムをここに持ってくる方法を知りません。

0 投票する
2 に答える
216 参照

c++ - QT4 qlistview保存アイコンの位置は、次回のために手で移動しました

.desktopファイルからロードされた一連のアイコンでウィンドウを開くqt4.3を使用してアプリを開発しています。ファイルブラウザをエミュレートしようとしますが、ファイルブラウジングは行いません...つまり、アプリをダブルクリックして開くか、グリッドに接続されている必要のない別の位置にアイコンをドラッグできます。

「アイコンモード」でqdirmodelとqlistviewを使用しています。

私の問題は、アイコンを移動すると、アイコンの位置を保存できないことです。アプリを再起動するたびに、アイコンがデフォルトの位置に読み込まれます。アイテムの位置を知る方法や、アイテムをある位置に移動する方法が見つかりません。

私は何をすべきですか?チャンスはありますか?

ありがとう!

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

qt - QListView のサイズを適切に取得する方法

アイコンと QSlider を含む qlistview を含む単純なウィジェットを作成しています。ウィジェットは Qt Designer で作成されます。私がやろうとしているのは、アイコンを QListView の高さに正確に合わせて、アイコンが 1 行になるようにすることです。QWidget から継承された関数を使用して qlistview の高さを読み取ろうとしていますが、QListView の実際のサイズより常に小さい値を取得し続けています。この動作に関するヒントはありますか?

以下にコードの一部を示します。

フォームのコンストラクタ:

私のモデルのデータ関数:

ウィジェットには、垂直レイアウトの QListView と QSlider のみが含まれます。問題は、ui->commandListView->geometry().height() を呼び出しても実際の qlistview の高さが得られないことです。また、ui->commandListView->height() または ui->commandListView->frameGeometry( )。身長()。