我们知道 Windows 中的静态控件不接收输入焦点。但是由于Windows中的静态控制只是一个子窗口,根据我目前的理解,任何窗口都应该在我们点击它时获得输入焦点。那么Static控件是如何实现这种拒绝输入焦点的效果呢?我怀疑它在其 WM_SETFOCUS 处理程序中进行了特殊处理,该处理程序将输入焦点传递给其父窗口。但是,我已经做了一些测试,似乎子窗口根本没有收到任何 WM_SETFOCUS,即 Windows 从来没有真正尝试过将输入焦点赋予静态控件。
我已经阅读了有关输入焦点的 msdn,并且与 Windows 如何为静态控制分配焦点无关。谁能解释一下如何使静态控制没有输入焦点?