其实这种方法同样适用于C/VB等语言.用一个字符串变量或数组,如TStrings 型,用来保存子窗体的句柄handle,保存的时候将子窗体的handle(是HWND类型,其实也是数值类型),转换为String型,然后用这个变量来跟踪子窗体的变动.然后,在程序中用BringWindowToTop来将该窗体置前即可.他的参数是个hwnd值.只需要将刚才保存在的值再转换为数值,就可以对该子窗体进行置前了。
在之前参考过的vb的一个小程序中,他是用子窗体的标题来控制的。在对各个子窗体的枚举当中,如果哪个子窗体的标题与这某个字符串相同的话就将他置前。不过,我觉得不如上一种我想的这个方法好。好像在vb中子窗体置前用 zorder 0吧。大概是这个,记不太清楚了。
我原来计划用父窗体的mdichildren[]来进行访问.可是这样太麻烦了.因为这个数组的索引值不好控制,并不仅仅是按照创建的顺序来进行,他会将当前活动窗口做为0,这样就麻烦了.况且,borland也不建议用这种方法来控制.不过子窗体的方法有个BringToFront挺适合的,但不好控制.
如果各位网友有什么更好的方法,不防分享一下,以期共同提高。
阅读(3239) | 评论(2) | 转发(0) |