⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sy0403.htm

📁 c语言经典教程
💻 HTM
字号:
<html>
<HEAD>
<TITLE>Visual C++与计算机接口</TITLE>
 <META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=gb2312" > 
</HEAD>
<body>
<font color="#0000FF">创建窗口</font>
<p>
(一)实验目的:<BR>
     熟悉窗口的创建和使用<BR><BR>
(二)实验内容:<BR>
     用ClassWizard建立一个窗口类,创建显示一个窗口<BR><BR>
(三)实验步骤:<BR><BR>
  要创建新的窗口,一般是从CMDIChildWnd继承生成,它与View和MainFrame都是从CWnd类继承来的,几乎拥有同样的功能,都可以响应菜单消息、进行消息映射、函数重载,都可以在上面绘图。<BR>
  CMDIChildWnd的小缺点是不与CDocument类联系,无法享有CDocument的一些方便,但这也不是不能克服的。<BR>
  CMDIChildWnd的优点是可以方便的定义多种不同的CMDIChildWnd以实现不同的功能,可以方便的创建和关闭多个窗口。<BR><BR>
1、用ClassWizard建立一个窗口类<BR>
   (1)打开ClassWizard,点击按钮Add Class...并选择New。<BR>
   (2)New Class 对话框打开后,填入Name,例如CMyWindow。<BR>
   (3)选择基类Base Class,通常选CMDIChildWnd。<BR>
   (4)点击OK,新类CMyWindow就建立好了。<BR>
  在FileView中,能看到工程所包含的文件中多了MyWindow.h和MyWindow.cpp两个文件,它们里面就是CMyWindow类的定义和实现。<BR><BR>
2、创建并显示窗口<BR>
  窗口的创建通常是调用其Create函数,函数参数中一般包括窗口的标题、窗口显示风格、窗口的位置、父窗口的指针等。<BR>
   (1)打开MyWindow.h文件,将 CMyWindow(); 前的 protected: 改为 public: <BR>
   (2)在MainFrm.h中,包含MyWindow.h。<BR>
   (3)定义一个新菜单项,并在CMainFrame中进行消息映射。<BR>
   (4)在映射函数中,定义窗口指针并创建窗口。<BR>
      CMyWindow* pWnd = new CMyWindow;<BR>
      pWnd->Create(NULL,_T("MyWindow"), WS_CHILD|WS_VISIBLE|WS_OVERLAPPEDWINDOW|WS_HSCROLL|WS_VSCROLL, rectDefault, this);<BR>
    注意:这里只能定义窗口指针,不能象显示对话框那样定义窗口对象。<BR>
    因为对象的生命期只是在其定义有效的区域,出了其定义区域,对象所占的资源会自动释放掉。<BR>
    而指针本身不占任何资源,其所需的资源是通过new操作符从堆中申请的,必须主动释放。若不释放,则会在程序运行过程中一直存在。<BR><BR>
3、操作窗口和关闭窗口<BR>
  若把窗口指针定义为类的成员变量,则在窗口生成后,可以通过调用窗口类的函数来随意操纵它,例如改变其显示方式、关闭窗口、改变其内部数据等。<BR>
   (1)在MainFrm.h中,定义窗口指针:<BR>
      CMyWindow* m_pMyWindow;<BR>
   (2)在菜单映射函数中创建窗口:<BR>
      m_pMyWindow = new CMyWindow;<BR>
      m_pMyWindow->Create(NULL,_T("MyWindow"), WS_CHILD|WS_VISIBLE|WS_OVERLAPPEDWINDOW|WS_HSCROLL|WS_VSCROLL, rectDefault, this);<BR>
   (3)在另一菜单映射函数中改变其显示方式:<BR>
      m_pMyWindow->ShowWindow(SW_SHOWMAXIMIZED);<BR>
    或 m_pMyWindow->ShowWindow(SW_SHOWMINIMIZED);<BR>
   (4)在另一菜单映射函数中关闭窗口:<BR>
      m_pMyWindow->DestroyWindow();<BR>
<p></p>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -