不知道各位高手遇到过我这种问题没有。
在client端和server端连接成功的情况下:
我从client端发出信息,在发出的过冲中,我先用bytesToWrite()返回待读的数据大小,然后等待一段时间,再用bytesToWrite()返回待读数据的大小。两次的返回值表明数据已经发出了。
在server端,我是把serverSocket的readyread()信号与newDataSlot()槽连接起来了,并且在此槽中设置了状态栏的信息,并且把数据读到QTextEdit中,但是数据没有显示出来,状态栏也没有发生变化,说明readyread()信号没有发出,这是为什么呀?
然后实在没有办法,我想可能是数据没有传过来吧!于是我在server端增加一个按钮,并把他的clicked()信号与某个槽连接起来,并且在此槽中调用serverSocket->bytesAvailable()函数,显示数据已经到达了server端,然后再调用serverSocket->read(..,..);然后再append到
QTextEdit中,但是任然无法显示,readyread()信号也没有发出!请问 这到底是为什么呀,我哪里出错了呀?这部分代码如下:
qint64 bytes = serverSocket->bytesAvailable();
QMessageBox::information(this,tr("information"),tr("%1 data wait fof being read").arg(bytes));
//QString buffer;
QByteArray buffer = serverSocket->readAll();
sendText->append((QString)buffer);
请你们指教哈,真的无助了