计算远程桌面应用程序的屏幕坐标

时间:2015-11-21 16:03:18

标签: java screen rdp

我目前正在使用Java开发一个远程桌面应用程序,但我仍然在计算远程鼠标点击的屏幕坐标。

例如,远程计算机的分辨率为1024x768,但呈现图像并处理点击的面板仅为800x600。如何计算坐标,所以当我按下时在右上角的面板中,它还点击远程计算机吗?

我试过

x = clickedX / (remoteX/clickedX)

x = clickedX * (remoteX/clickedX)

但它似乎永远不会起作用。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

如果我正确了解您要执行的操作,则可以向上/向下缩放目标分辨率,以显示远程桌面的较小/较大图像。 因此,您需要使用您使用的比例因子来计算转换。

int targetWidth = 1024;
int targetHeight = 768;
int myWidth = 800;
int myHeight = 600;

double scaleX = targetWidth/myWidth;
double scaleY = targetHeight/myHeight;

double targetMouseX = myMouseX * scaleX; // 
double targetMouseY = myMouseY * scaleY; //

使用targetMouseX& Y作为您的“输出”,myMouseX& Y作为您的输入,例如你的鼠标事件。

相关问题