Java VT100和处理,获取光标位置
我试图在处理草图中实现telnet接口,以便在控制台上传递命令和接收输出。 当时我正在学习VT100命令集,因此我终于能够理解如何通过移动光标在已打印的字符串上重新打印 我发现程序也可以从控制台获取输入,就像使用获取光标位置命令一样Java VT100和处理,获取光标位置,java,terminal,processing,cursor-position,vt100,Java,Terminal,Processing,Cursor Position,Vt100,我试图在处理草图中实现telnet接口,以便在控制台上传递命令和接收输出。 当时我正在学习VT100命令集,因此我终于能够理解如何通过移动光标在已打印的字符串上重新打印 我发现程序也可以从控制台获取输入,就像使用获取光标位置命令一样 myClient.write("\033]6n"); //^[6n 问题是,只需在客户端界面上打印位置,而我希望将其返回到主机上。有人知道这是否可能以及如何可能吗 多谢各位 下面是一些示例代码: import processing.net.*; Server
myClient.write("\033]6n"); //^[6n
问题是,只需在客户端界面上打印位置,而我希望将其返回到主机上。有人知道这是否可能以及如何可能吗
多谢各位
下面是一些示例代码:
import processing.net.*;
Server myServer;
void setup() {
myServer = new Server(this, 10002); // Starts a myServer on port 10002
}
void draw() {
Client thisClient = myServer.available();
if (thisClient != null) {
if (thisClient.available() > 0) {
String recived = thisClient.readString();
println(recived);
thisClient.write("\033[2A\r\033[2K" + "You just wrote: " + recived + "\033[2K");
thisClient.write("\033[6n"); // this happear on the client side, i want it back somehow
}
}
}
void serverEvent(Server someServer, Client someClient) {
someClient.write("\nhello, type something please...\n");
}
你能发布一个吗?它是
myClient.write(“\033[6n”);
答案是\033[row;colR
如果终端支持此序列。当然,它支持。但是,终端前面的人阅读了此序列。作为服务器运行的程序如何知道该数据?@KevinWorkman,你说得对,刚刚添加。终端(模拟器)将发送\033[row;colR
序列。