SDI窗口弹出模式窗口在任务栏的反映
主窗口是一个SDI窗口,当弹出一个模式窗口时,如果不加任何处理,在Windows任务栏里表现为应用程序为非活动状态。在VB里没找到相关方法处理这种界面异常,于是API了。
一般情况下(这一点在Windows经典主题下非常抢眼),应用程序处于活动状态,应用程序在任务栏上的按钮处于选中状态,Windows经典主题下就是白色凹下的按钮,非活动状态就是一个凸起的按钮。
比如,如果在IE中 工具->选项 ,会弹出IE的选项窗口,该窗口是一个模式窗口。点击IE有任栏里的按钮,切换到非活动状态,再点击任务栏按钮,则切换回活动状态。
在弹出的模式窗口的Load过程中写上,SetWindowPos me.hwnd,HWND_TOP,nLeft,nTop,nWidth,nHeight, SWP_NOACTIVATE
貌似解决了这个问题。
但是,如果当弹出一个模式窗口后,应用点击程序在任务栏上的按钮,又产生了不和谐:应用程序不能切换回活动状态。
如何排除这种不和谐?