2017-01-02 17 views
0

Мне нужно показать окно с помощью моей статической библиотеки, но с помощью QMessageBoxQApplication;Показаны рассылки из библиотеки

Как я могу показать окно сообщения без QApplication?

+0

Исходный вызов [ 'MessageBox'] (https://msdn.microsoft.com/en-us/library/windows/desktop/ms645505 (V = vs.85) .aspx), возможно? Вам не нужно заполнять окно владельца. – usr2564301

+1

@RadLexus: Мне нужен кросс-платформенный почтовый ящик, MessageBox - это специфический для Windows – RYN

ответ

1

Просто создайте экземпляр QApplication на всю жизнь приложения. (например, в вашем «основном», «WinMain» или где-то в начале последовательности инициализации вашего приложения)

С этого момента вы можете создавать модальные экземпляры QMessageBox все, что вы хотите. Он должен сосуществовать с вашим собственным насосом сообщений, пока вы используете последнюю версию Qt.

int main(int argc, char *argv[]) 
{ 
    QApplication a(argc, argv); 

    QMessageBox msgBox; 
    msgBox.setText("Hello World"); 
    msgBox.exec(); // blocks until the user finishes interacting with the message box 

    return 0; 
}