WEB开发网
开发学院软件开发VC VC实用小知识总结 (一) 阅读

VC实用小知识总结 (一)

 2007-03-21 21:29:02 来源:WEB开发网   
核心提示: BOOL CSampleEDitView : : PreCreateWindow (CREATESTRUCT&cs){//First call basse class function .BOOL bResutl =CEditView : : PreCreateWindow (cs)//
  BOOL CSampleEDitView : : PreCreateWindow (CREATESTRUCT&cs)
  {
  //First call basse class function .
  BOOL bResutl =CEditView : : PreCreateWindow (cs)
  // Now specify the new window style .
  cs.style &= ~ (ES_AUTOHSCROLL |WS_HSCROLL)
  return bResult
  }
  (13) 如何使程序保持极小状态?

这么办: 在恢复程序窗体大小时,Windows会发送WM_QUERY-OPEN消息,用 ClassWizard设置成员函数

  OnQueryOpen() ,add following code:
  Bool CMainFrame:: OnQueryOpen( )
  {
  Return false
  }
  (14) 移动窗口

调用CWnd : : SetWindowPos并指定SWP_NOSIZE标志。目的位置与父窗口有关(顶层窗口与屏幕有关)。调用CWnd : : MoveWindow时必须要指定窗口的大小。

  //Move window to positoin 100 , 100 of its parent window .
  SetWindowPos (NULL, 100 , 100 , 0 , 0 , SWP_NOSIZE |SWP_NOAORDER)

(15) 通用控件的显示窗口

MFC提供了几个CView派生的视窗类, 封装了通用控件的功能,但仍然使用工作框文档显示窗口体系结构:CEditView封装了编辑控件,CTreeView保持了树列表控件,CListView封装了列表显示窗口控件,CRichEditView可以处理多种编辑控件。

  (16) 重置窗口的大小

调用CWnd: : SetWindowPos并指定SWP_NOMOVE标志, 也可调用CWnd : : MoveWindow 但必须指定窗口的位置。

  // Get the size of the window .
  Crect reWindow
  GetWindowRect (reWindow )
  //Make the window twice as wide and twice as tall .
  SetWindowPos (NULL , 0 , 0 , reWindow . Width ( ) *2,
  reWindow . Height () * 2,
  SWP_NOMOVE |SWP_NOZORDER )
  (17) 如何单击除了窗口标题栏以外的区域使窗口移动

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接