一般に、itemSelectionChanged
信号に接続し、何かが選択されているかどうかを確認します。
self.listwidget.itemSelectionChanged.connect(self.on_selection_changed)
def on_selection_changed(self):
if not self.listwidget.selectedItems():
# Do Stuff Here
self.nothing_selected_function()
しかし、それだけで何かが選択し、ユーザーがすべてを選択解除されたイベントをキャッチします。何も選択されなかった場合は、この信号をトリガーすることはありません(最初にリストを作成しても何も選択されません)。その場合は、スロットを手動で呼び出す必要があります。
self.listwidget = ... # Code that builds and populates list widget
# Call this manually the first time.
self.on_selection_changed()
あなたの質問の一部はあいまいです。 なぜ何かが「選択されていない」ときを知りたいですか?新しい商品がいつリストに追加されるのですか?リストが変更されているので「選択されていない」機能が起動されるはずですが、まだ何も選択されていませんか?
アイテムが選択されていない場合は、ボタンとテキストボックスのいくつかを無効にしたいと思います。ユーザーが新しい項目をリストに追加すると、自動的にその項目が選択された項目として設定されます。 – Gambit2007