1.打开你要隐藏的控件所在的界面(打开程序,显示Block UI对话框)
2.打开通过UIFW Spy(当前显示的Block UI对话框的分析的信息)找到当前控件类名称(以指定方位控件作为演示示例)
3.核心部分代码
#include <uf.h>
#include <uf_ui.h>
UF_initialize();
BOOL CALLBACK EnumChildProc(HWND hwndChild, LPARAM lParam)
{
char s[200] = { 0 };
memset(s, 0, 200);
GetWindowTextA(hwndChild, s, 200);//获取当前hwndChild的名称
//UF_UI_open_listing_window();//调试用
//UF_UI_write_listing_window(s);
//UF_UI_write_listing_window("\n");
if (strcmp(s,"UGS::UICOMP_manip")==0)//将名称与类名称进行匹配,找到控件
ShowWindow(hwndChild, SW_HIDE); //设置隐藏
return TRUE;
}
/*隐藏指定方位控件UI*/
void hide_manip_UI()
{
HWND hd = GetForegroundWindow(); //得到当前进程窗口
EnumChildWindows(hd,EnumChildProc,0);//遍历窗口中所有子控件(在EnumChildProc回调中进行处理)
}
int main()
{
hide_manip_UI();
}
UF_terminate();
4.效果(隐藏了也可拖拽)
参考博客: