Qt UDPsocket readyread() SIGNAL 发出两次
Qt UDPsocket readyread() SIGNAL emit twice
我使用 QUDPsocket 发送消息。我连接: connect(socket,SIGNAL(ReadyRead()),this,SLOT(processPendingDatagrams()));
当我在main中调用sendmessage("123")时,processPendingDatagrams()只运行一次。
但是当我在按钮单击事件中调用 sendmessage("123") 时,它会运行两次。 如何解决问题?
发送消息():
socket->writeDatagram(data,data.length(),QHostAddress::Broadcast, port);
如果服务器根据客户端的操作注意到它一次或两次,那么这是客户端的错。
在点击事件中,添加以下内容:
qDebug() << "Click event, sending message...";
您可能会注意到它被发送了两次,单击向下和释放按钮时。相反,您可以执行以下操作:
connect(myButton, &QPushButton::clicked, [this]() {sendMessage("123");}
或者做你自己的老虎机。
相关文章:
- g++的分段错误(在NaN上使用to_string两次时)
- 蛇在C++不会连续转两次
- 检查一个数组是否包含在另一个数组中,以相反的顺序,至少两次
- 从具有按值捕获的 lambda 移动构造 std::函数时,移动构造函数调用两次
- 我应该如何去缓解两次出现的cin?
- Realloc 两次无法在 Visual Studio 上运行
- 使用 getline(cin, var) 两次在进行字符串比较时会产生错误 (==)
- 为什么映射插入和 map.find() 的单次迭代比插入和 map.find() 的两次单独迭代慢得多
- C++析构函数调用两次,堆栈分配的复合对象
- 为什么参数在构造 std::thread 时移动两次
- Qt插槽调用了两次
- 做 std::用相同的unique_ptr移动两次
- C++两次定义相同的函数会导致错误
- 为什么具有静态存储持续时间的同一内联变量在包含在 VS2017 编译的两个翻译单元中时会构造和销毁两次
- 对于优化级别为 0 的 std::vector,析构函数被调用两次
- 使用柯南打包时如何避免列出两次依赖?
- 为什么要执行两次位移((x >> 4)<< 4)?
- 对结构向量进行两次排序
- 如果我使用同一个密钥推送用户数据两次,会发生什么
- Qt UDPsocket readyread() SIGNAL 发出两次