首页 > 其他分享 >jna获取windos所有窗口

jna获取windos所有窗口

时间:2023-07-14 14:23:50浏览次数:32  
标签:WinDef 窗口 INSTANCE jna windowText User32 windos left

        <dependency>
            <groupId>net.java.dev.jna</groupId>
            <artifactId>jna</artifactId>
            <version>5.6.0</version>
        </dependency>
        <dependency>
            <groupId>net.java.dev.jna</groupId>
            <artifactId>jna-platform</artifactId>
            <version>5.6.0</version>
        </dependency>
    public static void showWindow(){

        final User32 user32 = User32.INSTANCE;
        user32.EnumWindows((hWnd, arg1) -> {
            char[] windowText = new char[1000];
            User32.INSTANCE.GetWindowText(hWnd, windowText, 5120);
            String wText = Native.toString(windowText);
            boolean b = User32.INSTANCE.IsWindowVisible(hWnd);
            if (wText.isEmpty()) {
                return true;
            }
            System.out.println(wText);
            return true;

        }, null);

    }

获取窗口宽高、移动窗口

    public static void main(String[] args) {
        WinDef.HWND hwnd = User32.INSTANCE.FindWindow(null,"D:\\360MoveData\\Users\\Administrator\\Desktop\\工作.txt - " +
                "Notepad++");
        WinDef.RECT rect = new WinDef.RECT();
        User32.INSTANCE.GetWindowRect(hwnd,rect);

        User32.INSTANCE.MoveWindow(hwnd,100,100,1200,800,true);
        int left = rect.left;
        System.out.println(left);
        //showWindow();
    }

 

标签:WinDef,窗口,INSTANCE,jna,windowText,User32,windos,left
From: https://www.cnblogs.com/qq376324789/p/17553569.html

相关文章

  • LeetCode 239. 滑动窗口最大值
    classSolution{public:vector<int>maxSlidingWindow(vector<int>&nums,intk){deque<int>q;vector<int>res;for(inti=0;i<nums.size();i++){//删除滑出窗口的元素while(......
  • java点击按钮弹出窗口
    Java点击按钮弹出窗口实现流程本文将教会你如何使用Java实现点击按钮弹出窗口的功能。下面是整个过程的流程图:步骤描述步骤1创建Java图形用户界面(GUI)窗口步骤2添加按钮到窗口步骤3注册按钮的点击事件处理器(监听器)步骤4实现按钮点击事件处理方法步骤5创......
  • access 在其他窗口中设置组合框控件,没有触发它的AfterUpdate事件怎么办?
    '在A窗体中设置B窗体中组合框的值PrivateSubCommand9_Click()OpenFormAneCloseMe("订单管理")'注意这里是先打开窗体,等窗体打开后再设置值Forms("订单管理").Controls("Combo53").Value="全部"Forms("订单管理").Combo53_AfterUp......
  • Cassandra2.0 JNA配置
    Cassandra中通过JNA可以调用Native方法优化Jvm内存,大概意思就是不让操作系统将jvm内存置换到系统swap分区,从而提升jvm内存性能。它有两个用处: Since0.6.2:JNAfor mlockall.ThispreventsLinuxfromswappingoutpartsoftheJVMthataren'taccessedfrequently.ChrisG......
  • SQL窗口函数OVER详细用法
    #SQL窗口函数OVER详细用法OVER的定义:​OVER用于为行定义一个窗口,它对一组值进行操作,不需要使用GROUPBY子句对数据进行分组,能够在同一行中同时返回基础行的列和聚合列。OVER的语法OVER([PARTITIONBYcolumn][ORDERBYculumn])PARTITIONBY子句进行分组;......
  • Pb从入坑到放弃(三)数据窗口
    写在前面数据窗口是Pb的一个特色控件,有了数据窗口对于pb来说可谓如虎添翼。对数据库中的数据操作,几乎都可以在数据窗口中完成。使用数据窗口可以简单检索数据、以图形化的方式显示数据、绘制功能强大的数据统计报表。一、数据窗口画板数据窗口画板由Design,Preview,Control......
  • 不用资源文件的 VC 窗口程序
    1.单个文件的windows VC程序,不用资源文件。在win32模板程序基础上改。2.菜单和热键的代码添加3.模式对话框的代码添加。 程序运行界面,最简的win32程序  代码如下,单个文件,比较麻烦的就是对话框。//NOT.cpp:////#include"stdafx.h"#include<windows.h>#......
  • 算法题-生成窗口最大值数组
    https://leetcode.cn/problems/sliding-window-maximum/ classSolution{publicint[]maxSlidingWindow(int[]nums,intk){if(nums==null||nums.length==0||k<0){returnnull;}int[]result=newint[nums.length-k+1];......
  • 4. Q_ 设置_p_的_font_size_10rem_,当用户重置或拖曳浏览器窗口时,文本大小是
    Q:设置p的font-size:10rem,当用户重置或拖曳浏览器窗口时,文本大小是否会也随着变化?A:不会。rem是以html根元素中font-size的大小为基准的相对度量单位,文本的大小不会随着窗口的大小改变而改变。......
  • [AHK2] 轻松拖拽窗口
    使用:非最大化下,按住ctrlalt鼠标左键拖动如下:*<^<!LButton::{CoordMode"Mouse","Screen"MouseGetPos(&px,&py)WinGetPos(&wx,&wy,,,'A')dx:=wx-px,dy:=wy-pySetWinDelay-1WhileGet......