标题: Qt TCP C/S通信源程序 tcp_Client与tcp_Server [打印本页]

作者: yyx342779418    时间: 2019-10-28 11:48
标题: Qt TCP C/S通信源程序 tcp_Client与tcp_Server
TCP C/S 通信

源程序如下:
  1. #include "widget.h"
  2. #include "ui_widget.h"

  3. Widget::Widget(QWidget *parent) :
  4.     QWidget(parent),
  5.     ui(new Ui::Widget)
  6. {
  7.     ui->setupUi(this);
  8.     tcpSocket = new QTcpSocket;
  9.     connect(tcpSocket,SIGNAL(connected()),this,SLOT(connect_success()));
  10.     tcpSocket->connectToHost("10.0.2.15",8888);
  11.     connect(tcpSocket,SIGNAL(readyRead()),this,SLOT(read_data()));
  12. }

  13. Widget::~Widget()
  14. {
  15.     delete ui;
  16. }

  17. void Widget::on_send_clicked()
  18. {
  19.     std::string msg = ui->msg->text().toStdString();
  20.     tcpSocket->write(msg.c_str(),msg.size());
  21.     ui->msg->clear();
  22. }

  23. void Widget::read_data()
  24. {
  25.     char buf[256] = {};
  26.     tcpSocket->read(buf,sizeof(buf));
  27.     ui->text->append(buf);
  28. }

  29. void Widget::connect_success()
  30. {
  31.     ui->send->setEnabled(true);
  32. }

  33. void Widget::on_msg_returnPressed()
  34. {
  35.     char msg[256] = {};
  36.     sprintf(msg,"%s:%s",name,ui->msg->text().toStdString().c_str());
  37.     tcpSocket->write(msg,strlen(msg));
  38.     ui->msg->clear();
  39. }

  40. void Widget::on_name_returnPressed()
  41. {
  42.     sprintf(name,"%s",ui->name->text().toStdString().c_str());
  43.     qDebug("%s",name);
  44. }
复制代码

所有资料51hei提供下载:
Qt_TCP.zip (55.5 KB, 下载次数: 28)



作者: wangdragon    时间: 2019-10-28 22:09
不行啊 楼主




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1