Ограничивающее значение для int в pyqtsignal?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Ограничивающее значение для int в pyqtsignal?

Сообщение Anonymous »

У меня есть сигнал, который выглядит так: < /p>

Код: Выделить всё

add_history_row_signal = QtCore.pyqtSignal(int, int)
< /code>
Первый int - это ключ для дикта, чтобы получить значение. И на самом деле этот INT является идентификатором объекта данного объекта (т.е. id (my_object) 
).
Связанный метод получает значение int ... но это неправильно, а ключ не найден в DICT.

Код: Выделить всё

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) 
в коде Python 1715560796288, так что больше. Очевидный обходной путь - преобразование этого значения идентификатора в строку. Просто подумал, могу ли я избежать этого.

Подробнее здесь: https://stackoverflow.com/questions/796 ... pyqtsignal
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»