別のコンボボックス/リストボックスの項目が選択されている場合QMessageBox PyQtはを表示

StackOverflow https://stackoverflow.com/questions/1312598

  •  19-09-2019
  •  | 
  •  

質問

私が持っているコンボボックスcbLayerと、次の形式の関数do_stuffます:

def do_stuff(item_selected_from_cbLayer):
    new_list = []
    # do stuff based on item_selected_from_combobox and put the items in new_list
    return new_list

どのように私は別の項目は以下の形式で選択されるたびにポップアップ表示するQMessageBoxを取得することができます:

QMessageBox.warning(self, "items: ", do_stuff(cb_selected_item))
役に立ちましたか?

解決

このコードが含まれているメソッドや関数を記述し、信号コンボボックスに添付currentIndexChangedするます:

def __init__(self):
    ...
    QObject.connect(self.cbLayer, SIGNAL("currentIndexChanged(int)"), self.warn)

def warn(index):
    QMessageBox.warning(self, "items: ", do_stuff(cbLayer.itemData(index)) )

def do_stuff(self, item):
    QMessageBox.warning(self, str(item))

私はこれを試していないが、それはあなたが始める必要があります。それ以外の場合はPyQtは例を見てます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top