У меня есть сигнал, который выглядит следующим образом:
Код: Выделить всё
add_history_row_signal = QtCore.pyqtSignal(int, int)
< /code>
Первый int - это ключ для дикта, чтобы получить значение. И на самом деле этот int является идентификатором объекта данного объекта (т.е. ID (my_object) Связанный метод получает значение int ... но это неправильно, и ключ не обнаруживается в DICT. Разработчики PYQT должны что -то сделать (по крайней мере, документируйте это). < /p>
Однако, если я сделаю INT, используемый в качестве ключа меньшего размера (потеря гарантии уникальности), это работает ОК: < /p>
Код: Выделить всё
he_id_val = id(history_entry) % 10000
...
self.he_id_to_row_map[he_id_val] = [date_item, entry_item]
self.add_history_row_signal.emit(he_id_val, len(history_list))
< /code>
... эти 2 INT затем проходят OK для подключенного метода < /p>
Я мог только подумать о 2 объяснениях для этого: либо есть максимальное значение для ключа int в DICT в Python (кажется, что это не так, насколько я могу сказать), либо Pyqtsignal, кажется, вполучите < /p> Pyqtsignal, кажется, «Pyctsignal». обыскивал по этому поводу и ничего не нашел. Очевидно, что QT записывается в C ++, и это значение Max Int, по -видимому, составляет 2147483647. Типичное значение от ID (x) Подробнее здесь: https://stackoverflow.com/questions/796 ... pyqtsignal
Мобильная версия