Как использовать класс пользовательского интерфейса при создании приложения QT - PullRequest
0 голосов
/ 28 октября 2011

Я создал графический интерфейс qt для выполнения некоторой задачи проверки, и это показывает результаты в метках.Я использую QT Creator, и это создает программу header и mainwindow.cpp.Поэтому моя проблема заключается в том, что я объявил больше методов в заголовок, чтобы выполнить какую-то задачу, и с результатами обновил метку, но у меня есть проблема, которую я использую во время цикла, и мой GUI никогда не запускается.Я попытался запустить в последовательном режиме (без цикла), и это работает, но только вызывает функцию las, и программа не следует последовательности (например, пытается выполнить ping на сервер).

НижеУ меня есть похожая программа mianwindow.cpp,

#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
while(1)
{
    ping2server()
    if(ping2server>0)
            ui->label->setText("The server is alive");
    else
            break;

}
/*the server is dead connecting to other one*/
.
.
//and so on

}

MainWindow::~MainWindow()
{
delete ui;
}

int MainWindow::png2server()
{

}
int MainWindow::conn2server()
{
}

Любые идеи, пожалуйста, дайте мне знать.Я действительно новичок в этом.

Спасибо

1 Ответ

1 голос
/ 28 октября 2011

Вы замораживаете все приложение, когда делаете такой цикл.Вместо этого вы должны использовать QTimer и обновить метку, используя сигнал timeout().

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