1,主界面
2,代码部分
- #include "mainwindow.h"
- #include "ui_mainwindow.h"
- #include
-
-
- QString MainWindow::getLocalIP()
- {
- QString hostName=QHostInfo::localHostName();//本地主机名
- QHostInfo hostInfo=QHostInfo::fromName(hostName);
- QString localIP="";
-
- QList
addList=hostInfo.addresses();//
-
- if (!addList.isEmpty())
- for (int i=0;i
count();i++)
- {
- QHostAddress aHost=addList.at(i);
- if (QAbstractSocket::IPv4Protocol==aHost.protocol())
- {
- localIP=aHost.toString();
- break;
- }
- }
- return localIP;
- }
-
- MainWindow::MainWindow(QWidget *parent) :
- QMainWindow(parent),
- ui(new Ui::MainWindow)
- {
- ui->setupUi(this);
-
- LabSocketState=new QLabel("Socket状态:");//
- LabSocketState->setMinimumWidth(200);
- ui->statusBar->addWidget(LabSocketState);
-
- QString localIP=getLocalIP();//本机IP
- this->setWindowTitle(this->windowTitle()+"----本机IP:"+localIP);
- ui->comboTargetIP->addItem(localIP);
-
- udpSocket=new QUdpSocket(this);//用于与连接的客户端通讯的QTcpSocket
-
- connect(udpSocket,SIGNAL(stateChanged(QAbstractSocket::SocketState)),
- this,SLOT(onSocketStateChange(QAbstractSocket::SocketState)));
- onSocketStateChange(udpSocket->state());
-
- connect(udpSocket,SIGNAL(readyRead()),
- this,SLOT(onSocketReadyRead()));
- }
-
- MainWindow::~MainWindow()
- {
- udpSocket->abort();
- delete udpSocket;
- delete ui;
- }
-
- void MainWindow::onSocketStateChange(QAbstractSocket::SocketState socketState)
- {
- switch(socketState)
- {
- case QAbstractSocket::UnconnectedState:
- LabSocketState->setText("scoket状态:UnconnectedState");
- break;
- case QAbstractSocket::HostLookupState:
- LabSocketState->setText("scoket状态:HostLookupState");
- break;
- case QAbstractSocket::ConnectingState:
- LabSocketState->setText("scoket状态:ConnectingState");
- break;
-
- case QAbstractSocket::ConnectedState:
- LabSocketState->setText("scoket状态:ConnectedState");
- break;
-
- case QAbstractSocket::BoundState:
- LabSocketState->setText("scoket状态:BoundState");
- break;
-
- case QAbstractSocket::ClosingState:
- LabSocketState->setText("scoket状态:ClosingState");
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!