C 서버에 연결해야하는 클라이언트를 만들려고합니다. TCP를 사용해야합니다. 이미 모든 기능을 갖춘 서버가 있지만 클라이언트를 연결할 수 없습니다. 나는 서버에 어떤 데이터도 보내고 싶지 않다. 난 그냥 연결을 설정하고 새 대화 상자를 열어 싶습니다.Qt 클라이언트 - C 서버에 연결
다음은 Void Login :: on_pushButton_clicked() 슬롯의 코드입니다. // pushButon 내 로그인 버튼
pSocket = new QTcpSocket (this);
connect (pSocket, SIGNAL(readyRead()), SLOT(waitNextStep()));
pSocket->connectToHost(ui->lineEdit->text(), ui->lineEdit_2->text().toInt());
if(pSocket->waitForConnected())
{
Menu mMenu;
mMenu.setModal(true);
mMenu.exec();
}
else
{
QMessageBox::critical(this,tr("Error"),tr("Error at Connect"));
}
이미 메뉴 클래스를 정의하고 내가 연결 부분없이 테스트 이후이 기능을 알고있다. lineEdits의 IP 가져 오기 부분도 작동합니다. pSocket은 Login 클래스에서 private 멤버 (QTcpSocket * pSocket)로 선언됩니다.
불행히도 QT에 익숙하지 않아 'waitNextStep()'함수에 포함해야하는 것이 무엇인지 알지 못합니다. 나는 방금 1을 돌려 줬다. 많은 예제에서 다른 함수가 있다는 것을 알았 기 때문에 connect 함수에서 SLOT에 대해 확신 할 수 없습니다.
프로그램을 실행해도 오류가없고 프로그램이 올바르게 실행됩니다. 하지만 로그인 버튼을 누르면 대화 상자가 약 15 초 동결됩니다. 응답이 없습니다. 그 다음에 '연결시 오류'메시지가 나타납니다. 어떤 도움을 많이 주시면 감사하겠습니다.
"Unfortunatelly 나는 QT를 처음 접했고 'waitNextStep()'함수가 포함해야하는 것이 무엇인지 알지 못합니다." Qt 질문이 아닙니다. _ 유우가 알아야 할 유스 케이스 질문입니다. – lpapp
저는 배울 점이 많다는 것을 알고 있습니다. 그러나 이것은 긴급한 프로젝트이므로 자습서와 예제에서 할 수있는 한 많은 정보를 얻고 있습니다. 나는 지금 문서를 읽고 흡수 할 수 없습니다. 어쨌든 회신 해 주셔서 감사합니다. – KupiKupi
사람들은 일반적인 프로젝트 관리 문제처럼 사람들이 쉽게 빠져 들었습니다. "끝내고, 끝내고, 필요한 작업량을 예측하지 마십시오."어느 쪽이든, 나는 당신의 Qt 기술을 판단하지 않고, 유즈 케이스를 철저히 알지 못한다는 사실을 말하면서, 그 방법에서 정확히 무엇을해야만하는지, 그래서 우리는 더 이상의 명확한 설명없이 일반적인 힌트를 줄 수 있다고 말합니다. – lpapp