Tkinter after () не работает при изменении системного времени - PullRequest
0 голосов
/ 26 апреля 2019

Есть ли способ отменить и перепланировать события tkinter after () при обновлении системного времени или превентивно обновить планировщик after ()?

Описание

У меня есть пользовательский графический интерфейссозданный в tkinter с использованием Python3.7 на Raspbian (форк Debian-Linux для Raspberri Pi).Я создал экран для настройки системного времени.

Если дата и время установлены на будущее, все в порядке, но если оно установлено на прошлое, что-либо, использующее метод tkinter after () для планирования событийникогда не бываетЯ полагаю, что после () работает по системному времени опроса, и запланированные времена теперь далеко в будущем.

Я проверил это, установив время на минуту в прошлом.Первоначально все элементы, использующие функцию after (), перестали обновляться, но графический интерфейс по-прежнему реагировал на события нажатия.Минуту спустя эти элементы продолжали обновляться.

В связи

Этот вопрос в 2010 году касался той же проблемы, но не имеет решений.


Примечание: пользователь, работающий с графическим интерфейсом, не имеет привилегий для установки времени, поэтому он фактически запускает службу (что он имеет право делать) и записывает строку времени в канал FIFO.Служба, работающая от имени пользователя root, читает канал и обновляет время.Я проверил, правильно ли установлено время с помощью этого метода.

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