繁体   English   中英

Qt5网络中的连接错误

[英]Connection error in qt5 network

我想制作一个像msn messenger的程序,我在网络上使用了qt5,当我与本地服务器建立新连接时,它不起作用,这使我还没有连接服务器,我不知道原因

主窗口

 #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <QtNetwork/QTcpServer> #include <QtNetwork/QTcpSocket> namespace Ui { class MainWindow; } class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = 0); ~MainWindow(); private slots: void on_pushButton_clicked(); void newConnection (); private: Ui::MainWindow *ui; QTcpServer *server; }; #endif // MAINWINDOW_H 

主窗口

 #include "mainwindow.h" #include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); server = new QTcpServer(this); connect(server , SIGNAL(newConnection()) , this , SLOT(newConnection())); if(server->listen(QHostAddress::Any , 5050)) { ui->label->setText("Not Start"); } else { ui->label->setText("Server Started Now"); } } MainWindow::~MainWindow() { delete ui; } void MainWindow::newConnection() { QTcpSocket *socket = server->nextPendingConnection(); socket->write("Hello Islam"); socket->flush(); socket->waitForBytesWritten(3000); socket->close(); } void MainWindow::on_pushButton_clicked() { newConnection(); } 

这个用于调用库

 #------------------------------------------------- # # Project created by QtCreator 2013-11-03T10:00:37 # #------------------------------------------------- QT += core gui network greaterThan(QT_MAJOR_VERSION, 4): QT += widgets TARGET = TCPTEST TEMPLATE = app SOURCES += main.cpp\\ mainwindow.cpp HEADERS += mainwindow.h FORMS += mainwindow.ui 

我试图在mainwindow构造函数中调用新连接,但是没有用

我认为错误在于

if(服务器->监听(QHostAddress :: Any,1234))

它起作用了,但必须

if(!server-> listen(QHostAddress :: Any,1234))

启动服务器

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM