Как создать независимое окно через Qt?
Что у меня есть
Основное окно Qt
int main(int argc, char* argv[]) {
QApplication a(argc, argv);
MainWindow w;
w.showMaximized();
return a.exec();
}
Бывает, что при отладке MainWindow
мне нужно поставить точку остановки (например в цикле) и открыть дополнительное окно, в которое необходимо вывести промежуточную информацию.
void MainWindow::foo(){
for(;;){
if (a < 0){
DebugMeshPrint d;
d.run(); // Запускаю доп. окно. Оно мне нужно для отладки.
auto break_point = 0; // * тут точка остановки
}
}
}
Я создал виджет
class DebugMeshPrint : public QWidget {
Q_OBJECT
public:
DebugMeshPrint(QWidget* parent = nullptr);
~DebugMeshPrint();
private:
void run();
};
Суть проблемы
Вся проблема заключается в том, что при срабатывании точки остановки неактивными становятся и основное окно и дополнительное.
Что мне нужно
Мне бы хотелось, чтобы дополнительное окно было независимым. Т.е. я передал туда всю необходимую информацию и оно существует само по себе. Чтобы можно было пользоваться доп. окном даже, когда основное неактивно (сработала точка остановки).
Источник: Stack Overflow на русском