关于C# lpClassName和lpWindowName区别
WindowsAPI里的FindWindow(stringlpClassName,stringlpWindowName)一个窗体的类名,一个窗体的名称有何区别呢?我要查找...
Windows API里的FindWindow(string lpClassName,string lpWindowName)
一个窗体的类名,一个窗体的名称 有何区别呢?
我要查找一个窗口直接输入窗体名称就得了,为什么还要写类名呢? 展开
一个窗体的类名,一个窗体的名称 有何区别呢?
我要查找一个窗口直接输入窗体名称就得了,为什么还要写类名呢? 展开
1个回答
展开全部
举几个例子可能就好理解一些了。
比如文本编辑框,它们的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++……
比如文本编辑框,它们的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++……
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询