如何找到指定标题的窗口

问题描述

在桌面上有几个窗口,其中我想找到窗口标题包含有“工程”两个字的窗口。然后把它隐藏。我是新手。请帮个忙。

解决方案

解决方案二:
win32API:FindWindow
解决方案三:
隱藏窗口同樣要使用win32API,函數為ShowWindow.具體使用請參閱MSDN.
解决方案四:
用spy++查看窗口标题栏..
解决方案五:
给楼主一个查找包含有指定字符串的标题的所有窗口的代码,仅供参考,仅供参考:internaldelegateboolEnumThreadWindowsCallback(IntPtrhWnd,IntPtrlParam);internaldelegateboolEnumChildrenCallback(IntPtrhwnd,IntPtrlParam);[DllImport("user32.dll",CharSet=CharSet.Auto,SetLastError=true)]internalstaticexternboolEnumWindows(EnumThreadWindowsCallbackcallback,IntPtrextraData);[DllImport("user32.dll",ExactSpelling=true)]internalstaticexternboolEnumChildWindows(HandleRefhwndParent,EnumChildrenCallbacklpEnumFunc,HandleReflParam);[DllImport("user32.dll",CharSet=CharSet.Auto,SetLastError=true)]internalstaticexternintGetWindowThreadProcessId(HandleRefhandle,outintprocessId);[DllImport("user32.dll",CharSet=CharSet.Auto)]internalstaticexternintGetWindowText(HandleRefhWnd,StringBuilderlpString,intnMaxCount);[DllImport("user32.dll",CharSet=CharSet.Auto)]publicstaticexternintGetWindowTextLength(HandleRefhWnd);privateboolEnumWindowsCallback(IntPtrhandle,IntPtrextraParameter){intcapacity=GetWindowTextLength(newHandleRef(this,handle))*2;StringBuilderlpString=newStringBuilder(capacity);GetWindowText(newHandleRef(this,handle),lpString,lpString.Capacity);if(lpString.Length>0&&lpString.ToString().IndexOf("工程")!=-1){Console.WriteLine(lpString.ToString());EnumChildWindows(newHandleRef(null,handle),newEnumChildrenCallback(EnumChildWindowsCallBack),newHandleRef(null,IntPtr.Zero));}returntrue;}privateboolEnumChildWindowsCallBack(IntPtrhandle,IntPtrlparam){intcapacity=GetWindowTextLength(newHandleRef(this,handle))*2;StringBuilderlpString=newStringBuilder(capacity);GetWindowText(newHandleRef(this,handle),lpString,lpString.Capacity);if(lpString.Length>0&&lpString.ToString().IndexOf("工程")!=-1){Console.WriteLine(lpString.ToString());EnumChildWindows(newHandleRef(null,handle),newEnumChildrenCallback(EnumChildWindowsCallBack),newHandleRef(null,IntPtr.Zero));}returntrue;}privatevoidbutton1_Click(objectsender,EventArgse){EnumThreadWindowsCallbackcallback=newEnumThreadWindowsCallback(this.EnumWindowsCallback);EnumWindows(callback,IntPtr.Zero);}

解决方案六:
上面的代码只是找到相应的窗口,但没有隐藏,可以使用如下API:[DllImport("user32.dll",CharSet=CharSet.Auto,ExactSpelling=true)]publicstaticexternboolShowWindow(HandleRefhWnd,intnCmdShow);

解决方案七:
这个要学习!!!!
解决方案八:
值得学习,定点
解决方案九:
四楼正解,使用windows的一个窗口枚举器.
解决方案十:
真是太感谢了。热泪盈眶…………感谢四颗星的老大哥……虽然还没有调试成功,但你能这么热心的帮助我们这些新手,真的打心里感谢!

时间: 2024-09-16 12:15:47

如何找到指定标题的窗口的相关文章

在Excel中轻松找到指定工作表两法

平常我们总是习惯于在同一个Excel文档中设计大量表格.工作表标签栏一次最多也就显示五六个工作表名称,即不能排序又不支持查找功能.想直接在标签栏中按名称找工作表可不简单,单是翻页就够你眼睛花的.在此为大家介绍两种在Excel 2007中轻松找到指定工作表的方法. 借助工作表列表 在Excel中本来就有一个提供全部工作表的名称列表,在列表中就可以轻松找到并切换到指定的工作表. 1.显示列表 在工作表标签栏左侧有四个控制标签滚动.翻页的按钮,在此处右击就会弹出一个列表显示当前文档中所有工作表名称.列

Excel 2007中找到指定工作表的方法

  平常我们总是习惯于在同一个Excel文档中设计大量表格.工作表标签栏一次最多也就显示五六个工作表名称,即不能排序又不支持查找功能.想直接在标签栏中按名称找工作表可不简单,单是翻页就够你眼睛花的.在此为大家介绍两种在Excel 2007中轻松找到指定工作表的方法. 借助工作表列表 在Excel中本来就有一个提供全部工作表的名称列表,在列表中就可以轻松找到并切换到指定的工作表. 1.显示列表 在工作表标签栏左侧有四个控制标签滚动.翻页的按钮,在此处右击就会弹出一个列表显示当前文档中所有工作表名称

Excel2007中轻松找到指定工作表两法

平常我们总是习惯于在同一个Excel文档中设计大量表格.工作表标签栏一次最多也就显示五六个工作表名称,即不能排序又不支持查找功能.想直接在标签栏中按名称找工作表可不简单,单是翻页就够你眼睛花的.在此为大家介绍两种在Excel 2007中轻松找到指定工作表的方法. 借助工作表列表 在Excel中本来就有一个提供全部工作表的名称列表,在列表中就可以轻松找到并切换到指定的工作表. 1.显示列表 在工作表标签栏左侧有四个控制标签滚动.翻页的按钮,在此处右击就会弹出一个列表显示当前文档中所有工作表名称.列

java编程,在屏幕上显示一个带标题的窗口,并添加一个按钮

问题描述 java编程,在屏幕上显示一个带标题的窗口,并添加一个按钮 编写程序,在屏幕上显示一个带标题的窗口,并添加一个按钮,当用户单击按钮时,弹出对话框,显示用户单击了按钮. 解决方案 找点Java 的 Swing学习资料,这种界面估计用netbean或idea都可以自动生成. 解决方案二: import java.awt.Frame; import java.awt.Graphics; import java.awt.GridLayout; import java.awt.event.Act

运行时出错:无法找到指定DLL库文件“SkinH

  运行时出错! 错误信息:无法找到指定DLL库文件"SkinH_EL.dll"中的输出命令"SkinH_Attach_Ex" 这是用易语言编写的程序,缺少了运行库

ftp-如何在FTP中找到指定文件

问题描述 如何在FTP中找到指定文件 有时想寻找的文件不知道在哪个目录里,有没有什么方法 ,可以像搜索".java"的形式找到以.java后缀的文件?

vs2013 c-vs2013写c时 提示无法启动程序之后是我的路径名 系统无法找到指定文件

问题描述 vs2013写c时 提示无法启动程序之后是我的路径名 系统无法找到指定文件 在我的路径下确实没有找到.exe的文件,重装了一遍还是同样的问题

JS从一组数据中找到指定的单条数据的方法_javascript技巧

下面小编给大家介绍基于js如何从一组数据中找到指定的单条数据.具体方法如下所示: 在一般情况下,我们会要求后端在列表的时候输出一堆列表的JSON数据给我们,然后我们把这堆数据循环,就能在前端上显示列表了. 而我们在内容页的时候,则要求输出一个内容页的JSON数据给我们,我们就可以做内容页了. 但是,有时候,数据并不是特别复杂,我们可能需要从列表的数据中指定其中的单条数据.怎么做呢? 标准答案,find方法 var json = [{"id":1,"name":&qu

Access3.6 为数据库指定标题

  选定打印报表的样式以后单击下一步按钮现在要给新建的数据库指定一个标题在对话框上面的文本框里输入客户订单资料库 这个对话框中起的名字是新建的数据库入口窗体上的标题词也就是打开这个数据库时看到的第一个界面上的标题词和刚才给数据库文件起的名是不一样的请确定是否在所有的报表上都加一幅画意思是如果想在这个数据库打印出来的所有文件报表上都加上某个图片就可以在这儿选择是的我要包含一幅图片并通过单击图片-按钮选择一幅图片比如有的公司在打印一些报表的时候都希望将自己公司的标识打印在打印纸上就需要选择这个选项并