贵州做网站公司
贵州做网站公司~专业!靠谱!
10年网站模板开发经验,熟悉国内外开源网站程序,包括DEDECMS,WordPress,ZBlog,Discuz! 等网站程序,可为您提供网站建设,网站克隆,仿站,网页设计,网站制作,网站推广优化等服务。我们专注高端营销型网站,企业官网,集团官网,自适应网站,手机网站,网络营销,网站优化,网站服务器环境搭建以及托管运维等。为客户提供一站式网站解决方案!!!

灰色按钮激活程序的原理 (学习)

来源:网络转载 时间:2023-08-21 12:36:40

首先我们需要明白程序实际上程序中的每个窗口都会有个句柄(即:窗口句柄)这个句柄是唯一的,在同一时刻不会有两个同样的句柄存在.一般来说灰色按纽激活程序都是激活的当前活动的窗口即当前得到焦点的窗口,(其他没得到焦点的窗口为灰色标题栏)如何得到呢?我们可以用一个API

GetForegroundWindow

这个API即可获得当前激活的窗口.返回类型就是一个句柄,函数原形如下:

HWND GetForegroundWindow(VOID);

下面就是关键了.需要用到一个API

BOOL EnumChildWindows(   
    HWND hWndParent,
    WNDENUMPROC lpEnumFunc,
    Lparam lParam
);

这个函数的作用为枚举出指定窗口的全部子窗口.窗口的子窗口可以理解为窗口上的控件,因为这些控件例如按钮其实也是窗口,但是他是在窗口上,所以为子窗口,同理,用GetForegroundWindow获得到的自然是父窗口的句柄了.

这个可能不大好理解,简单的说就是那些例如按钮之类的控件都是子窗口,所以我们用上面那个API可以把这些控件枚举出来,这个函数是需要一个回调函数的.

先说明下这个API的参数,第一个为父窗口的句柄,第二个为回调函数的指针,第三个一般为NULL他的意思是给回调函数的参数,必要的时候可以通过这个传递一个指针给回调函数.

下面看下回调函数.

BOOL callback EnumChildProc(
  HWND hwnd,      // handle to child window
  LPARAM lParam   // application-defined value
){
...
}

这样系统每枚举一个控件就会调用一次这个函数.启动第一个参数就是控件的句柄.

例如我们做如下判断

 if (!::IsWindowEnabled(hwnd))
 {//处理灰色
        ::enablewindow(hwnd,TRUE)
 }

这样灰色的按钮就可以被激活了.

感谢: http://tbxy.blog.com.cn/archives/2006/1578246.shtml

SEO小店网站优化 能带来大量精准流量的网站才是好网站,小店网络公司SEO优化推广可以为企业网站带来大量的有效流量。 ...

汉寿网站排名快速提升 汉寿网络公司快速提升企业网站排名,通过网站优化推广,让汉寿企业网站在搜索引擎的排名长期稳定。 ...

SEO张家界网站优化 能带来大量精准流量的网站才是好网站,张家界网络公司SEO优化推广可以为企业网站带来大量的有效流量。 ...

ipad 2018怎么安装软件?这款设备自带app store,打开就可以下载软件。ipad如何取消安装app密码?以下方法可以取消密码安装:1.在iPad设置中找到您的个人Apple ID,然后选择[媒体和购买项目]。2.在账户设置中找到左上角的头像,选择【密码设置】。3.点击【需要密码】右侧的开关关闭。ipad怎么安装apk文件?无法安装!IPad罐 不要安装apk格式的安卓应用。IPad搭...

怎么进百度推广后台查看?1 .首先打开浏览器,登录你的百度推广账号。否则,您需要注册。2.在百度推广的后台管理中,可以看到百度统计等数据。在百度的顶端在页面的左下角加入百度推广与宣传环点进去进入百度。推广官网,点击右上角的客户登录进入百度推广。后台的网址,然后点选注册。填写公司名称和,会有人联系你所在地区,缴纳账户内的费用和资格即可生效,开始推广。百度推广的展示时间在哪里可以修改?1 .先登录后台...

如何学CAD?随着计算机应用技术的飞速发展,计算机辅助设计已经成为现代工业设计的重要组成部分。AutoCAD软件具有操作简单、功能强大的特点。它已被广泛应用于机械设计、建筑设计、电子等平面设计领域。那么怎样才能学好AutoCAD绘图呢?学前准备CAD软件选择在正式学习之前,我们要做一步准备,那就是找一个属于自己的CAD软件。虽然市面上有很多盗版的CAD,但是还是建议你使用正版的CAD软件。一方面,...

TOP