关于C# lpClassName和lpWindowName区别

WindowsAPI里的FindWindow(stringlpClassName,stringlpWindowName)一个窗体的类名,一个窗体的名称有何区别呢?我要查找... Windows API里的FindWindow(string lpClassName,string lpWindowName)
一个窗体的类名,一个窗体的名称 有何区别呢?

我要查找一个窗口直接输入窗体名称就得了,为什么还要写类名呢?
展开
 我来答
lily_blues
推荐于2018-04-08 · TA获得超过6466个赞
知道大有可为答主
回答量:1279
采纳率:0%
帮助的人:1705万
展开全部
举几个例子可能就好理解一些了。

比如文本编辑框,它们的Window Class Name一般都是“Edit”,而它们的Window Name一般就是文本框里面输入的文字;

比如静态文本(如标签等),它们的Window Class Name一般都是“Static”,而它们的Window Name一般就是标签上显示的文字;

比如普通对话框,它们的Window Class Name一般都是“#32770 (Dialog)”,而它们的Window Name这是显示在对话框标题栏里面的标题。

我的理解,Window Class其实就像我们编程里面的Class一样,同一个Class可以有很多实例(HWND——窗口句柄),而Window Name就像具体某个实例的一个成员变量(比如Person类的成员变量Name)。

Window Name一般都能从界面上看到,比如窗口的标题等。而Window Class Name是从界面上看不到的,只能用一些特殊的工具才能看到。推荐楼主可以试试Spy++……
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式