NSAlert.runModal() завершается ошибкой с исключением: "[NSAlert runModal] может быть вызван только из основного потока. Поведение в других потоках не определено".

Я пишу приложение 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. 

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

0 ответов

Другие вопросы по тегам