2017-09-12 7 views
0

ハイライトされたアイテムのインデックスをQComboBoxで取得したいと思います。この変数にはどのようにアクセスできますか?PyQt:QComboBoxからハイライトされたインデックスを取得

私が持っているサンプルコード:

... 
    self.combobox = QtWidgets.QComboBox() 
    self.combobox.addItems(['a', 'b', 'c']) 
    self.combobox.highlighted.connect(self.return_higlighted_index) 
    ... 

def return_highlighted_index(self): 
    print('The current highlighted index is: ', '?') 

答えて

1

代わりの

self.combobox.highlighted.connect(self.return_higlighted_index) 

だから、あなたはあなたの方法return_highlighted_indexは、コンボボックスに接続し、このような何か(テストしていません)

self.combobox.activated[str].connect(self.return_higlighted_index) 

def return_highlighted_index(self, combobox_entry): 
    idx = self.combobox.findText(combobox_enty) 
    print('The current highlighted index is: {}'.format(idx)) 

を試してみてください変更されるたびに、現在強調表示されている文字列をメソッドに渡しますをcombobox_entryとし、return_highlighted_index()とすると、インデックスを取得できるはずです。

0

Iは

... 
    self.combobox = QtWidgets.QComboBox() 
    self.combobox.addItems(['a', 'b', 'c']) 
    self.combobox.highlighted[int].connect(self.return_higlighted_index) 
    ... 

def return_highlighted_index(self, param): 
    print('The current highlighted index is: ', param) 
を次のようにコードを変更する必要があり、解決策を見つけた
関連する問題