Java获取Windows窗口位置
用Java调用本地方法获取屏幕“指定点”的窗口的信息:左上角坐标和窗口宽度和高度。类似于截图工具中的窗口自动截取。需源码,最好不要用第三方库。Java的只需要一个类即可,...
用Java调用本地方法获取屏幕“指定点”的窗口的信息:左上角坐标和窗口宽度和高度。
类似于截图工具中的窗口自动截取。需源码,最好不要用第三方库。
Java的只需要一个类即可,传入坐标(x, y)即可获取上面说的4个数据。
还需要一个判断该点位置是否有窗口的方法 展开
类似于截图工具中的窗口自动截取。需源码,最好不要用第三方库。
Java的只需要一个类即可,传入坐标(x, y)即可获取上面说的4个数据。
还需要一个判断该点位置是否有窗口的方法 展开
5个回答
推荐于2018-03-14
展开全部
使用JNI调用WIN32 API ,先得到窗口句柄,再得到窗口的RECT
先WindowFromPoint(point);
再GetWindowRect(hwnd, &rect);
返回的rect,就是窗口的left/top/width/height
这个不麻烦、也不复杂,很简单的JNI。
先WindowFromPoint(point);
再GetWindowRect(hwnd, &rect);
返回的rect,就是窗口的left/top/width/height
这个不麻烦、也不复杂,很简单的JNI。
展开全部
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import java.net.URL;
public class Java_3 extends Applet{
private Image im;
public void init()
{
String strImg;
//***************Found*************
strImg=getParameter("Image") ;//得到参数Image的值
URL url=getDocumentBase() ;
im=getImage(url,strImg);
//***************Found****************
this.addMouseMotionListener(new MouseMotionAdapter()
{
public void mouseMoved(MouseEvent e)
{
String strTemp;
strTemp="鼠标位置:("+e.getX() +","+e.getY() +")";
//***********Found***********
showStatus(strTemp);//在状态栏显示鼠标位置
}
}) ;
}
public void paint(Graphics g)
{
//************Found************
g.drawImage(im,0,0,this) ;//显示出图片
}
}
import java.awt.event.*;
import java.applet.*;
import java.net.URL;
public class Java_3 extends Applet{
private Image im;
public void init()
{
String strImg;
//***************Found*************
strImg=getParameter("Image") ;//得到参数Image的值
URL url=getDocumentBase() ;
im=getImage(url,strImg);
//***************Found****************
this.addMouseMotionListener(new MouseMotionAdapter()
{
public void mouseMoved(MouseEvent e)
{
String strTemp;
strTemp="鼠标位置:("+e.getX() +","+e.getY() +")";
//***********Found***********
showStatus(strTemp);//在状态栏显示鼠标位置
}
}) ;
}
public void paint(Graphics g)
{
//************Found************
g.drawImage(im,0,0,this) ;//显示出图片
}
}
追问
哥们你看问题没 ??
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没有找到方法。
找了很多,都是讲,用JNI的方式,用接品去调用MFC的类库。
JAVA本身,好象不具有这个功能。
我再找找吧。
找了很多,都是讲,用JNI的方式,用接品去调用MFC的类库。
JAVA本身,好象不具有这个功能。
我再找找吧。
追问
可以用JNI啊。我就是不会用这个,你帮我写个吧。。。
追答
我只会简单的JNI,
在C++的代码里怎么调用MFC我就不会了。
java 写本地方法类,
生成 .h 文件
这些都可以,再深入我就不行了,而这些,在网上很容易就能找到,
如果你需要,我可能帮你写,怎么调用MFC,真的不会。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
下载个jna的包,如下即可:
WinDef.RECT dimensionsOfWindow = new WinDef.RECT();
WinDef.HWND parentWindow = User32.INSTANCE.FindWindow(null, windowText);
User32.INSTANCE.GetWindowRect(parentWindow, dimensionsOfWindow);
WinDef.RECT dimensionsOfWindow = new WinDef.RECT();
WinDef.HWND parentWindow = User32.INSTANCE.FindWindow(null, windowText);
User32.INSTANCE.GetWindowRect(parentWindow, dimensionsOfWindow);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
使用jni调用api
追问
只说不写
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询