EnableWindow的一个bug
这个函数的功能就是启用禁用窗口,最近由于需要自己实现了一个函数,跟EnableWindow是一样的效果,但是,发现了这个函数的一个问题
有一个编辑框,通常对这个编辑框禁用以后,颜色会变灰并且无法输入东西
我发现的bug就是 当焦点处于编辑框上时,对这个编辑框使用EnableWindow(...,FALSE),颜色会变灰,但是仍然可以输入东西;当你焦点移到其他控件上去,比如鼠标点一下别的编辑框或按钮,就不会出现这种情况.
不知道表达清楚没有,大家可以试一下
代码举例, 窗口上放一个编辑框和一个按钮.
添加一个线程函数,两句话,大概像这样
sleep(2000);//等2秒
GetDlgItem(编辑框ID)->EnableWindow(FALSE);
按钮的事件中启动这个线程函数
运行以后,点一下按钮,然后迅速点到编辑框上,2秒应该够了吧? 然后你就会发现虽然编辑框灰掉了,你仍然可以输入东西....
不知道这算不算一个bug呢?