模态窗口与非模态窗口

小谈wince下模态窗口与非模态窗口

一:创建

非模态窗口的创建

Code

模态窗口的创建

 

Code

二:两者区别

     其一:模式窗口被打开后就会始终保持输入焦点。除非窗口被关闭,否则用户无法切换到父窗口。   
               非模态窗口则可以讲焦点移到父窗口下。切换窗口可以用Show(False)

     其二:从上面可以看出非模态窗口必须要new

     其三:关闭窗口的方法不同

          非模态窗口要用CWnd::DestroyWindow

          模态窗口要用CDialog::EndDialog

          因为非模态窗口是new出来的 所以最后一定要delete。虽然DestroyWindow(),但实际上窗口实例并未被析构。

三:注意

Create(0,0,400,600,m_hWnd, 00);

 中的m_hWnd是父窗口的句柄。在five窗口也就是子窗口中可以用GetParent()来获得其父窗口的句柄

小谈wince下模态窗口与非模态窗口

posted @ 2009-02-18 18:56  Lynn_doo  阅读(3507)  评论(0编辑  收藏  举报