小编rog*_*8gm的帖子

Java - 窗口图像

有谁知道如何捕捉在Java中的屏幕截图(不是它自己的屏幕,但在桌面上的任何其他窗口,他们并不一定是积极的窗口)在Windows?这个类似的主题有很多线索,但我还没有找到答案.

我尝试过使用JNA,但经过几次尝试后卡住了.例如...

public class Main {

    public static void main(String[] args) {
        Main m = new Main();

        List<WindowInfo> list = m.getWindows();

        for (int i=0;i<list.size();i++) 
        {
            WindowInfo info = list.get(i);
            System.out.println(info.getTitle());
        }

        WindowInfo wi = list.get(0);

        W32API.HDC hdcSrc = User32.instance.GetWindowDC(wi.getHwnd());

        W32API.HDC hdcMemory = Gdi32.instance.CreateCompatibleDC(hdcSrc);

        //W32API.HBITMAP hBitmapMemory = Gdi32.instance.CreateCompatibleBitmap(hdcSrc, int width, int height);
        int width = wi.getRect().right - wi.getRect().left;
        int height = wi.getRect().bottom - wi.getRect().top;

        W32API.HBITMAP hBitmapMemory  = Gdi32.instance.CreateCompatibleBitmap(hdcSrc, width, height);

        W32API.HANDLE hOld  = Gdi32.instance.SelectObject(hdcMemory, hBitmapMemory);


        Gdi32.instance.BitBlt(hdcMemory, 0, …
Run Code Online (Sandbox Code Playgroud)

java winapi jna

7
推荐指数
2
解决办法
8632
查看次数

Java - 是否从(a,b)延伸到(c,d)触及Point(x,y)的线?

我正在用Java编写一个工具,它在Graphics对象上做了一点点绘图.

但是,我遇到了一个我不太清楚如何解决的问题.希望有人可以提供帮助.

如何确定Graphics对象上的点x,y是否接触从例如200,200到392,144的行.

听起来很简单,但我很难过......帮忙!

java graphics

5
推荐指数
2
解决办法
684
查看次数

要求公式 - 如果可能的话

我正在编写一个用Java编写的系统工具,基本上,它在t0开始一个任务,并在N秒内完成.因为我预计此工具可以在不同的计算机上运行,​​所以执行任务的时间会有所不同.

因此,在此工具开始之前,它需要进行一次性校准,以便能够准确预测任务完成所需的时间("准确",因为1到3秒就可以了).

基本上我有x和y的测量值,在N秒内完成...

x                       y                           N Seconds
------------------------------------------------------------
1.0                     15                          5.54
1.5                     15                          3.64
2.0                     15                          2.73

1.0                     35                          12.7
1.5                     35                          8.44
2.0                     35                          6.23

1.0                     55                          19.9
1.5                     55                          13.8
2.0                     55                          10.3

鉴于上面的测量,我可以得出一个神奇的公式,"如果任务要在15秒内完成,那么x必须是"blah",y是"blah".

显然数学不是我的强项,是一个公式甚至可能吗?

谢谢!

java algorithm math

0
推荐指数
1
解决办法
131
查看次数

标签 统计

java ×3

algorithm ×1

graphics ×1

jna ×1

math ×1

winapi ×1