大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
#include <windows.h>
#include <iostream>
#include <stdlib.h>
int main()
{
HWND h = FindWindow(NULL, L"我的电脑"); //"本地磁盘 (D:)"、"我的电脑"
std::cout << h << std::endl;
if (h)
{
//最小化窗口
BOOL b = CloseWindow(h);
std::cout << "最小化窗口" << (b? "成功" : "失败") << std::endl;
最大化窗口
//ShowWindow(h, SW_SHOWMAXIMIZED);
///修改标题栏,居然可以
SetWindowText(h, L"哈哈哈~");
}
system("pause");
return 0;
}
如上代码所示通过调用windows的函数FindWindow,根据标题获取其他程序的句柄,然后做一些操作(例子中是调用CloseWindow最小化窗口)。
参考博文:http://hi.baidu.com/it_ibear/item/aa3e11f53d06760384d2785b
这篇参考文章较好,不仅讲了如何获取窗口句柄,还讲了如何获取窗口中的按钮、文本框的句柄,以及如何通过发消息修改和操作这些控件。用到的函数简单列出来:
CWnd *pwnd=pWnd->GetWindow(GW_CHILD);//枚举保存对话框的所有子控件
pwnd = pwnd->GetNextWindow(); //获取同一层的其他窗口
::GetClassName(pwnd->GetSafeHwnd(),buf,512);//得到枚举的控件是什么类型的
::SendMessage(pwnd->GetSafeHwnd(),WM_LBUTTONDOWN,0,0);
pwnd->SendMessage(WM_GETTEXT,sizeof(BUF)/sizeof(TCHAR),(LPARAM)(void*)BUF);
pedit->SendMessage(WM_SETTEXT,0,(LPARAM)filename);
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/170219.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...