diff --git a/ClientCore/ClientCore.cpp b/ClientCore/ClientCore.cpp index 3d89632..0ad944e 100644 --- a/ClientCore/ClientCore.cpp +++ b/ClientCore/ClientCore.cpp @@ -94,6 +94,7 @@ void ClientCore::UseFrame(QSharedPointer frame) ownID_ = frame->data; GlobalData::Ins()->SetLocalID(ownID_); qInfo() << QString(tr("own id: %1")).arg(ownID_); + emit sigYourId(frame); break; } case FrameBufferType::FBT_CLI_ANS_DIRFILE: { diff --git a/ClientCore/ClientCore.h b/ClientCore/ClientCore.h index ef1c7c3..07052fd 100644 --- a/ClientCore/ClientCore.h +++ b/ClientCore/ClientCore.h @@ -77,6 +77,7 @@ signals: void sigTransFailed(QSharedPointer frame); void sigFileInfo(QSharedPointer frame); void sigOffline(QSharedPointer frame); + void sigYourId(QSharedPointer frame); signals: void conSuccess(); diff --git a/Gui/Control/ConnectControl.cpp b/Gui/Control/ConnectControl.cpp index 55dc7a8..c8d6c01 100644 --- a/Gui/Control/ConnectControl.cpp +++ b/Gui/Control/ConnectControl.cpp @@ -33,6 +33,9 @@ void Connecter::RunWorker(ClientCore* clientCore) qInfo() << QString(tr("Connected.")); }); + connect(clientCore_, &ClientCore::sigYourId, this, + [this](QSharedPointer frame) { ui->edOwnID->setText(frame->data); }); + connect(clientCore_, &ClientCore::conFailed, this, [this]() { setState(ConnectState::CS_DISCONNECT); qInfo() << QString(tr("Connect failed.")); @@ -121,7 +124,6 @@ void Connecter::setState(ConnectState cs) ui->btnConnect->setEnabled(false); ui->btnDisconnect->setEnabled(true); RefreshClient(); - ui->edOwnID->setText(GlobalData::Ins()->GetLocalID()); connect(heatBeat_, &HeatBeat::finished, heatBeat_, &QObject::deleteLater); break; case CS_DISCONNECT: