当前位置:首页 > 数码 >

命令按钮不能出现在对话框的功能(对话框打开命令无法执行怎么解决)

来源:原点资讯(www.yd166.com)时间:2024-04-22 16:56:21作者:YD166手机阅读>>

前段时间,有人问了我这样一个问题,今天来说道说道。

他是这样问的:

“当我将鼠标悬停在一个已经被禁用的窗口上时,窗口上对应的工具提示并没有出现?
这个是预期的行为吗?为什么在文档中没有说明?”

实际上,我想你应该已经知道答案了,文档中确实已经有描述过这个行为了,但是你需要将这些片段联合在一起来理解。

当一个窗口被禁用时,它将不会收到任何键盘和鼠标输入的消息。如果你研究一下 EnableWindow 的帮助文档,你就会知道确实是这样规定的。

接下来,工具提示控件怎么知道何时应该显示,何时应该隐藏呢?

一种方法是修改窗口过程,以便它获取所有输入消息,并通过 TTM_RELAYEVENT 消息将它们转发到工具提示空件。
这样,工具提示控件就知道鼠标的位置,并可以相应地显示和隐藏自身。

或者,可以使用 TTF_SUBCLASS 标志告诉工具提示控件对工具窗口进行子类化并获取输入本身。

以上两条都已经在 MSDN 里的某个角落里有相关的描述了。现在,让我们将这些知识点连接在一起来理解。

工具提示控件可通过 TTF_SUBCLASS 自动查看发往工具窗口的所有输入,也可以通过 TTM_RELAYEVENT 手动查看。
如果窗口被禁用,则它不会收到任何输入。

因此,工具提示控件没有要查看的输入消息,因此不知道何时出现或消失。这也是为什么您将不会看到隐藏窗口的工具提示,以及为什么在将鼠标捕获到另一个窗口时也不会看到工具提示。

所以你看,你早就知道答案了。你只是没有意识到。

总结

从体验上来说,我还是倾向于在一个已经禁用的窗口上显示工具提示,因为有些用户会看到一个变灰的按钮,但是他可能不明白为什么会这样?
如果这个时候,有个工具提示出来,就显得更加友好了。

最后

Raymond Chen的《The Old New Thing》是我非常喜欢的博客之一,里面有很多关于Windows的小知识,对于广大Windows平台开发者来说,确实十分有帮助。
本文来自:《Why can’t I display a tooltip for a disabled window?》

命令按钮不能出现在对话框的功能,对话框打开命令无法执行怎么解决(1)

,

栏目热文

对话框打开命令不执行(命令提示符自动执行怎么关闭)

对话框打开命令不执行(命令提示符自动执行怎么关闭)

在Windows系统中,当没有足够的权限来执行批处理文件(*.bat)时,通常需要以管理员身份运行批处理文件。以下是两种...

2024-04-22 16:51:30查看全文 >>

手机对话框打开命令无法执行(对话框打开命令无法执行怎么解决)

手机对话框打开命令无法执行(对话框打开命令无法执行怎么解决)

java应用程序jar文件可以由 JVM(Java虚拟机)直接执行,只要操作系统安装了JVM便可以运行作为Java应用程...

2024-04-22 17:12:57查看全文 >>

对话框打开时无法执行单击确定(点击不弹出对话框怎么办)

对话框打开时无法执行单击确定(点击不弹出对话框怎么办)

默认情况下,点击确定按钮时会自动关闭对话框。如果希望点击确定时阻止关闭对话框,则可以禁用内置的确定和取消按钮,而使用sl...

2024-04-22 16:46:31查看全文 >>

电脑对话框打开时命令无法执行(电脑的命令提示符打不开怎么办)

电脑对话框打开时命令无法执行(电脑的命令提示符打不开怎么办)

有时,我们会忽然遇到桌面上的图标无法通过拖放操作改变位置,或者在文本编辑器中无法将选定的文本从一处移动到另一处的情况。...

2024-04-22 17:00:34查看全文 >>

飞鸽传书图片大全(飞鸽传书官方网站)

飞鸽传书图片大全(飞鸽传书官方网站)

作者:我方特邀作者千秋远今年8月份,上海移动在浦东新区和虹口区部分路段布置了5G试点,生活在这些区域的小伙伴们已经可以体...

2024-04-22 17:16:41查看全文 >>

命令按钮能出现在对话框里吗(命令提示框怎么才能调出)

命令按钮能出现在对话框里吗(命令提示框怎么才能调出)

1.认识 Windows 10 系统的桌面及桌面图标登录到 Windows10系统后,展现在用户面前的是它的桌面,其主要...

2024-04-22 16:42:07查看全文 >>

面板输入命令不执行怎么办(运行框命令无法运行怎么办)

面板输入命令不执行怎么办(运行框命令无法运行怎么办)

用户反馈自己win7电脑无法运行cmd命令提示符窗口,下面给大家介绍win7无法运行cmd命令提示符解决步骤。  1、打...

2024-04-22 17:18:15查看全文 >>

命令栏菜单中表示该命令不能执行(命令行选项语法错误怎么解决)

命令栏菜单中表示该命令不能执行(命令行选项语法错误怎么解决)

最近有位win7系统用户在使用电脑的时候却发现cmd命令提示符无法运行了,用户不知道怎么解决这个问题,为此非常苦恼,那么...

2024-04-22 16:45:06查看全文 >>

错误代码678代表什么(连接错误代码678是什么意思)

错误代码678代表什么(连接错误代码678是什么意思)

当我们进行宽带连接时,出现宽带连接错误678。它意思是从计算机发出指令到网卡向外发送数据,包括电话线的传输,局端,那么该...

2024-04-22 17:10:36查看全文 >>

网络错误678是什么意思(网络连接错误678怎么解决方法)

网络错误678是什么意思(网络连接错误678怎么解决方法)

连接网络也会出现问题,678错误代码是宽带的故障代码之一。意思是远程计算机无响应。大概意思是由于MODEM损坏,网线、网...

2024-04-22 17:22:39查看全文 >>

文档排行