📄 status.cpp
字号:
#include "stdafx.h"
#include <stdio.h>
#include "status.h"
#include "communicate.h"
#include "screen.h"
extern struct struScreen struScrMsp;
extern CCommunicate *csTermCom;
//主设备属性
//询问 CSI c或CSI 0 c
//应答 ESC [ ? 1;2c
int AnswerMainDev()
{
char szBuf[20];
int iRet;
strcpy(szBuf,"\x1b[?1;2c");
iRet=csTermCom->SendData(szBuf,sizeof(szBuf));
return iRet;
}
//辅助设备属性
//询问 CSI > c或 CSI > 0 c 你配置如何?
//应答 CSI > Pp;Pv;Po c
// 参数Pp=24:识别码
// 参数Pv:监控版本号
// 参数Po:硬件可选件
int AnswerAssDev()
{
char szBuf[20];
int iRet;
strcpy(szBuf,"\x1b[>24;1.0;0");
iRet=csTermCom->SendData(szBuf,sizeof(szBuf));
return iRet;
}
//设备状态
//询问 CSI 5 n 设备状态正常否?
//应答 CSI 0 n 设备状态正常
// CSI 3 n 设备不正常
int AnswerDevState()
{
char szBuf[20];
int iRet;
strcpy(szBuf,"\x1b[>24;1.0;0");
iRet=csTermCom->SendData(szBuf,sizeof(szBuf));
return iRet;
}
//光标位置
//询问 CSI 6 n 现在光标在何处?
//应答 CSI Pl;Pc R 光标在Pl行Pc列
int AnswerCursorPosit()
{
char szBuf[20],szTemp[10];
int iRet;
memset(szBuf,0,sizeof(szBuf));
strcpy(szBuf,"\x1b[");
sprintf(szTemp,"%u",struScrMsp.iXPos);
strcat(szBuf,szTemp);
sprintf(szTemp,";%uR",struScrMsp.iYPos);
strcat(szBuf,szTemp);
iRet=csTermCom->SendData(szBuf,sizeof(szBuf));
return iRet;
}
//打印机状态
//询问 CSI ? 15 n 打印机状态如何?
//应答 CSI ? 13 n 无打印机(没开)
// CSI ? 10 n 打印机准备好
// CSI ? 11 n 打印机未准备好(缺纸、脱机等)
int AnswerPrinterState()
{
char szBuf[20];
int iRet;
//?
strcpy(szBuf,"\x1b[?13n");
iRet=csTermCom->SendData(szBuf,sizeof(szBuf));
return iRet;
}
//自定义键状态
//询问 CSI ? 25 n 自定义功能键状态如何?
//应答 CSI ? 20 n 自定义键允许
// CSI ? 21 n 自定义键锁定
int AnswerSelfKeyState()
{
char szBuf[20];
int iRet;
strcpy(szBuf,"\x1b[?20n");
iRet=csTermCom->SendData(szBuf,sizeof(szBuf));
return iRet;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -