2012-07-06 53 views
0

我想單憑文檔來學習Qt,它有點困難。我設法讓一個簡單的命令行聊天客戶端工作,但我不知道如何發送東西。大約需要4直觀的代碼行從Qt的插座閱讀,但由於某種原因,我不能說爲什麼我不能用QTcpSocket的write()方法發送數據?

QTcpSocket socket; 
socket.connectToHost("google.com", 80); 
socket.write("hey"); 
socket.flush(); 

的flush();返回false,但我不明白爲什麼。

我真的不明白爲什麼這不起作用,並希望得到任何幫助。謝謝!

+1

你是否實現了一個插槽來接收'QAbstractSocket :: error(QAbstractSocket :: SocketError socketError)'應該發生錯誤? – Matthew 2012-07-06 21:55:30

回答

3

connectToHost()後,你需要有一個時隙處理器爲connected()或致電waitForConnected()的權利,通過嘗試建立連接之前寫等待連接到主機來完成,否則你的代碼是縮放。

+0

我用waitForConnected()...它使flush()返回true,但它並沒有真正的工作(沒有出現在我的Java聊天客戶端)。 – ICoffeeConsumer 2012-07-06 22:07:36

相關問題