NSAlert.runModal () завершается ошибкой с исключением: «[NSAlert runModal] может вызываться только из основного потока. Поведение в других потоках не определено». - PullRequest
0 голосов
/ 06 февраля 2019

Я пишу приложение MACOS, используя Pyobjc и Python 3. Я пытаюсь показать предупреждение с помощью кнопки ОК и Отмена.Код ниже находится в потоке демона (к сожалению).Функция runModal () выбрасывает ниже исключения

"[NSAlert runModal] может быть вызвано только из основного потока. Поведение в других потоках не определено."

Мой код ниже

    from AppKit import NSAlert, NSInformationalAlertStyle, NSApp

    alert = NSAlert.alloc().init()
    alert.setMessageText_(text)
    alert.setInformativeText_(title)
    alert.setAlertStyle_(NSInformationalAlertStyle)
    for button in title_buttons:
        alert.addButtonWithTitle_(button)
    NSApp.activateIgnoringOtherApps_(True)
    return alert.runModal() # This line throws exception. 

Заранее спасибо

...