ListPrintSetup.h
上传用户:ledldq
上传日期:2007-01-04
资源大小:95k
文件大小:3k
源码类别:

打印编程

开发平台:

Visual C++

  1. #if !defined(AFX_LISTPRINTSETUP_H__E1B3DDE5_9D53_11D1_8BAC_0000B43382FE__INCLUDED_)
  2. #define AFX_LISTPRINTSETUP_H__E1B3DDE5_9D53_11D1_8BAC_0000B43382FE__INCLUDED_
  3. #if _MSC_VER >= 1000
  4. #pragma once
  5. #endif // _MSC_VER >= 1000
  6. // ListPrintSetup.h : header file
  7. //
  8. /////////////////////////////////////////////////////////////////////////////
  9. // CListPrintSetup dialog
  10. #include "CoolButton.h"
  11. #include "ListPrintPage1.h"
  12. #include "ListPrintPage2.h"
  13. // This are some small helper macros to manage CDialogs as tab pages
  14. // put this in the header file with numDialog = number of cdialogs pages
  15. #define GfxTabSupport(numDialog) CDialog * __gfxTabDialog[numDialog];
  16. // used to set up the array of CDialog * with the pages pointer; see OnInitDialog for sample
  17. #define GfxSetTabDialog(numDialog, pDialog) __gfxTabDialog[numDialog] = (CDialog *) pDialog;
  18. // used to insert tabs in the control; m_ctlTab is the tab control, nId the index of page
  19. // and pText the label of the page; see OnInitDialog for sample
  20. #define GfxAddTabItem(m_ctlTab, nId, pText)
  21. {
  22. TC_ITEM TabCtrlItem;
  23. TabCtrlItem.mask = TCIF_TEXT;
  24. TabCtrlItem.pszText = pText;
  25. m_ctlTab.InsertItem( nId, &TabCtrlItem );
  26. }
  27. // called in the CTabCtrl OnSelChange to switch between pages
  28. #define GfxSwitchTabDialog(numDialog, maxDialog)
  29. {
  30. for (int __gfxT = 0; __gfxT < maxDialog; __gfxT++)
  31. {
  32. if (__gfxT == numDialog) 
  33. __gfxTabDialog[__gfxT]->ShowWindow(SW_SHOW); 
  34. else 
  35. __gfxTabDialog[__gfxT]->ShowWindow(SW_HIDE); 
  36. }
  37. }
  38. class CListPrintSetup : public CDialog
  39. {
  40. // Construction
  41. public:
  42. CListPrintSetup(CWnd* pParent = NULL);   // standard constructor
  43. CListPrintPage1 dlgSheet1;
  44. CListPrintPage2 dlgSheet2;
  45. enum { iNumDialog = 2};
  46. GfxTabSupport(iNumDialog);
  47. void OnUpdateDialog();
  48. // Dialog Data
  49. //{{AFX_DATA(CListPrintSetup)
  50. enum { IDD = IDD_LISTSETUP };
  51. CCoolButton wndOk;
  52. CCoolButton wndCancel;
  53. CTabCtrl wndTab;
  54. CCoolButton wndPrintOpt;
  55. //}}AFX_DATA
  56. // Overrides
  57. // ClassWizard generated virtual function overrides
  58. //{{AFX_VIRTUAL(CListPrintSetup)
  59. protected:
  60. virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
  61. //}}AFX_VIRTUAL
  62. // Implementation
  63. protected:
  64. // Generated message map functions
  65. //{{AFX_MSG(CListPrintSetup)
  66. virtual BOOL OnInitDialog();
  67. afx_msg void OnBtPrintopt();
  68. afx_msg void OnSelchangeTab1(NMHDR* pNMHDR, LRESULT* pResult);
  69. virtual void OnOK();
  70. //}}AFX_MSG
  71. DECLARE_MESSAGE_MAP()
  72. };
  73. //{{AFX_INSERT_LOCATION}}
  74. // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
  75. #endif // !defined(AFX_LISTPRINTSETUP_H__E1B3DDE5_9D53_11D1_8BAC_0000B43382FE__INCLUDED_)