Это часть базового кода QtCreator в C++ для обмена данными между клиентом и сервером TCP. Предполагается, что это последняя функция, с которой мне нужно работать. Но чтобы понять, как это работает и где происходят ошибки, я пытаюсь показать целую кучу QMessageBoxes.Не все QMessageBox в той же функции фактически отображаются
Когда я запускаю его, я получаю первый, который говорит «успех». Но я не получаю ни одного из последних трех (поскольку, если-else, я бы ожидал, что хотя бы один появится). Поэтому я поставил еще пару QMSGBoxes в операторы if, заканчивающиеся на return, чтобы проверить, не является ли это проблемой, но даже они не отображаются.
Любая идея, почему это происходит? Заранее спасибо.
void DialogLogIn::success()
{
QMessageBox myBox;
myBox.setInformativeText("Sucess.");
myBox.setStandardButtons(QMessageBox::Ok);
myBox.exec();
//return;
qint16 blockSize = 0;
QDataStream in(mysocket);
in.setVersion(13);
if (blockSize == 0) {
if (mysocket->bytesAvailable() < (int)sizeof(quint16))
{
QMessageBox box;
box.setInformativeText("return 1.");
box.setStandardButtons(QMessageBox::Ok);
box.exec();
return;
}
in >> blockSize;
}
if (mysocket->bytesAvailable() < blockSize)
{
QMessageBox box;
box.setInformativeText("return 2");
box.setStandardButtons(QMessageBox::Ok);
box.exec();
return;
}
QString result;
in >> result;
if (result == "G")
{
QMessageBox box;
box.setInformativeText("Password Verified.");
box.setStandardButtons(QMessageBox::Ok);
box.exec();
}
else if (result == "N")
{
QMessageBox box;
box.setInformativeText("Password Incorrect.");
box.setStandardButtons(QMessageBox::Ok);
box.exec();
}
else
{
QMessageBox box;
box.setInformativeText("Error.");
box.setStandardButtons(QMessageBox::Ok);
box.exec();
}
}
Прошли ли вы через код в своем отладчике? –
sscce.org -> Не могли бы вы предоставить автономный пример с имеющейся основной функцией, которую мы можем построить и протестировать? – lpapp
Этот вопрос выглядит не по теме, потому что речь идет о проблеме с построением, которая не имеет никакого отношения к коду, и что в любом случае он не знает о себе. –