You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
1.4 KiB
C++
70 lines
1.4 KiB
C++
#include "XizanManage.h"
|
|
|
|
|
|
XizanManage::XizanManage()
|
|
{
|
|
}
|
|
|
|
|
|
XizanManage::~XizanManage()
|
|
{
|
|
}
|
|
|
|
void XizanManage::SetIpAndPort(QString& ip, int port)
|
|
{
|
|
m_ip = ip;
|
|
m_port = port;
|
|
}
|
|
|
|
void XizanManage::connectXizan()
|
|
{
|
|
if (m_xizanSocket == nullptr)
|
|
{
|
|
m_xizanSocket = new QTcpSocket(this);
|
|
//connect(m_xizanSocket, SIGNAL(readyRead()), this, SLOT(onReadyRead()));
|
|
//connect(m_xizanSocket, &QTcpSocket::connected, this, &XizanManage::onConnected);
|
|
//connect(m_xizanSocket, &QTcpSocket::readyRead, this, &XizanManage::onReadyRead);
|
|
//connect(m_xizanSocket, &QTcpSocket::disconnected, this, &XizanManage::onReadyRead);
|
|
}
|
|
m_xizanSocket->connectToHost(m_ip, m_port);
|
|
|
|
}
|
|
|
|
void XizanManage::SendOrder(QString& order)
|
|
{
|
|
|
|
}
|
|
|
|
void XizanManage::disConnectXizan()
|
|
{
|
|
if (m_xizanSocket != nullptr)
|
|
{
|
|
m_xizanSocket->disconnectFromHost();
|
|
}
|
|
}
|
|
|
|
QString XizanManage::GetXizanData()
|
|
{
|
|
QString recvStr;
|
|
|
|
connectXizan();
|
|
QString str = "VTFP 0 0";
|
|
if (m_xizanSocket != nullptr)
|
|
{
|
|
m_xizanSocket->write(str.toStdString().c_str());
|
|
m_xizanSocket->waitForBytesWritten(); // 确保数据完全发送
|
|
m_xizanSocket->waitForReadyRead(3000); // 等待服务器响应
|
|
recvStr = QString::fromUtf8(m_xizanSocket->readAll());
|
|
int i = 0;
|
|
}
|
|
disConnectXizan();
|
|
return recvStr;
|
|
}
|
|
|
|
void XizanManage::onReadyRead()
|
|
{
|
|
//返回数据格式: VTFP 0 2572.59 2631.00
|
|
/*QString recvStr = QString::fromUtf8(m_xizanSocket->readAll());
|
|
emit signal_sendRecvStr(recvStr);*/
|
|
}
|