отображать QMessageBox PyQT, когда выбран другой элемент списка со списком - PullRequest
0 голосов
/ 21 августа 2009

У меня есть поле со списком 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))

1 Ответ

1 голос
/ 21 августа 2009

Напишите метод или функцию, которая содержит этот код, и присоедините его к сигналу комбинированных окон 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.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...