home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / VISUAL_B / FERRAMEN / VBXSTD12 / TABDEMO.CP_ / TABDEMO.CPP
Encoding:
C/C++ Source or Header  |  1994-08-23  |  4.8 KB  |  198 lines

  1. // tabdemo.cpp : implementation file
  2. //
  3.  
  4. #include "stdafx.h"
  5. #include "vbxdemo.h"
  6. #include "tabdemo.h"
  7.  
  8. #ifdef _DEBUG
  9. #undef THIS_FILE
  10. static char BASED_CODE THIS_FILE[] = __FILE__;
  11. #endif
  12.  
  13. /////////////////////////////////////////////////////////////////////////////
  14. // CTabDemo dialog
  15.  
  16.  
  17. CTabDemo::CTabDemo(CWnd* pParent /*=NULL*/)
  18.     : CDialog(CTabDemo::IDD, pParent)
  19. {
  20.     //{{AFX_DATA_INIT(CTabDemo)
  21.     m_pTab1 = NULL;
  22.     m_pTab2 = NULL;
  23.     m_pTab3 = NULL;
  24.     m_pTab4 = NULL;
  25.     m_pTab5 = NULL;
  26.     m_pTab6 = NULL;
  27.     m_szText = "";
  28.     //}}AFX_DATA_INIT
  29. }
  30.  
  31. void CTabDemo::DoDataExchange(CDataExchange* pDX)
  32. {
  33.     CDialog::DoDataExchange(pDX);
  34.     //{{AFX_DATA_MAP(CTabDemo)
  35.     DDX_VBTab(pDX, IDC_VBTAB1, m_pTab1);
  36.     DDX_VBTab(pDX, IDC_VBTAB2, m_pTab2);
  37.     DDX_VBTab(pDX, IDC_VBTAB3, m_pTab3);
  38.     DDX_VBTab(pDX, IDC_VBTAB4, m_pTab4);
  39.     DDX_VBTab(pDX, IDC_VBTAB5, m_pTab5);
  40.     DDX_VBTab(pDX, IDC_VBTAB6, m_pTab6);
  41.     DDX_VBText(pDX, IDC_VBTEXT3, 20, m_szText);
  42.     //}}AFX_DATA_MAP
  43. }
  44.  
  45. BEGIN_MESSAGE_MAP(CTabDemo, CDialog)
  46.     //{{AFX_MSG_MAP(CTabDemo)
  47.     ON_WM_DESTROY()
  48.     ON_BN_CLICKED(IDHELP, OnHelp)
  49.     ON_VBXEVENT(VBN_CLICK, IDC_VBTAB1, OnClickVbtab1)
  50.     ON_VBXEVENT(VBN_CLICK, IDC_VBTAB2, OnClickVbtab2)
  51.     ON_VBXEVENT(VBN_CLICK, IDC_VBTAB3, OnClickVbtab3)
  52.     ON_VBXEVENT(VBN_CLICK, IDC_VBTAB4, OnClickVbtab4)
  53.     ON_VBXEVENT(VBN_CLICK, IDC_VBTAB5, OnClickVbtab5)
  54.     ON_VBXEVENT(VBN_CLICK, IDC_VBTAB6, OnClickVbtab6)
  55.     //}}AFX_MSG_MAP
  56. END_MESSAGE_MAP()
  57.  
  58.  
  59. /////////////////////////////////////////////////////////////////////////////
  60. // CTabDemo message handlers
  61.  
  62. BOOL CTabDemo::OnInitDialog()
  63. {
  64.     CDialog::OnInitDialog();
  65. m_szText = "Your are on the first panel...";
  66. UpdateData( FALSE );    
  67. if ( !IsHlpHere() )
  68.         GetDlgItem( IDHELP )->EnableWindow( FALSE );
  69. HandleTheTab();    
  70.     return TRUE;  // return TRUE  unless you set the focus to a control
  71. }
  72.  
  73. void CTabDemo::OnDestroy()
  74. {
  75.     CDialog::OnDestroy();
  76.     ::WinHelp( m_hWnd, "VBXSTD12.HLP", HELP_QUIT, NULL );        
  77. }
  78.  
  79. void CTabDemo::OnHelp()
  80. {
  81.     CString FAR szWinDir, szName, szMsg;
  82.     GetSystemDirectory( szWinDir.GetBuffer(250), 248 );
  83.     szWinDir.ReleaseBuffer();
  84.     if ( szWinDir.GetLength() > 3 )
  85.         szWinDir += "\\";
  86.     szName = szWinDir;
  87.     szName += "VBXSTD12.HLP";
  88.     if ( !IsHlpHere() )
  89.         return;
  90.     ::WinHelp( m_hWnd, szName, HELP_KEY, (long)"VBTab" );
  91.     
  92. }
  93.  
  94. void CTabDemo::OnClickVbtab1(UINT, int, CWnd*, LPVOID)
  95. {
  96.     HandleTheTab();
  97.     
  98. }
  99.  
  100. void CTabDemo::OnClickVbtab2(UINT, int, CWnd*, LPVOID)
  101. {
  102.     HandleTheTab();
  103.     
  104. }
  105.  
  106. void CTabDemo::OnClickVbtab3(UINT, int, CWnd*, LPVOID)
  107. {
  108.     HandleTheTab();
  109.     
  110. }
  111.  
  112. void CTabDemo::OnClickVbtab4(UINT, int, CWnd*, LPVOID)
  113. {
  114.     HandleTheTab();
  115.     
  116. }
  117.  
  118. void CTabDemo::OnClickVbtab5(UINT, int, CWnd*, LPVOID)
  119. {
  120.     HandleTheTab();
  121.     
  122. }
  123.  
  124. void CTabDemo::OnClickVbtab6(UINT, int, CWnd*, LPVOID)
  125. {
  126.     HandleTheTab();
  127.     
  128. }
  129.  
  130. void CTabDemo::HandleTheTab( )
  131. {           
  132. UINT iTrueValue;            
  133. CString szCurrent;
  134. if ( m_pTab1->Active() )
  135.     iTrueValue = IDC_VBTAB1;
  136. else if ( m_pTab2->Active() )
  137.     iTrueValue = IDC_VBTAB2;
  138. else if ( m_pTab3->Active() )
  139.     iTrueValue = IDC_VBTAB3;
  140. else if ( m_pTab4->Active() )
  141.     iTrueValue = IDC_VBTAB4;
  142. else if ( m_pTab5->Active() )
  143.     iTrueValue = IDC_VBTAB5;
  144. else if ( m_pTab6->Active() )
  145.     iTrueValue = IDC_VBTAB6;
  146. else
  147.     iTrueValue = IDC_VBTAB1;
  148.  
  149. switch ( iTrueValue )
  150.     {
  151.     case IDC_VBTAB1: szCurrent = (CString)m_pTab1->Caption(); break;
  152.     case IDC_VBTAB2: szCurrent = (CString)m_pTab2->Caption(); break;
  153.     case IDC_VBTAB3: szCurrent = (CString)m_pTab3->Caption(); break;
  154.     case IDC_VBTAB4: szCurrent = (CString)m_pTab4->Caption(); break;
  155.     case IDC_VBTAB5: szCurrent = (CString)m_pTab5->Caption(); break;
  156.     case IDC_VBTAB6: szCurrent = (CString)m_pTab6->Caption(); break;
  157.     }
  158.  
  159. if ( szCurrent == "Choice &1" )
  160.     {
  161.     m_szText = "You are on the first panel...";
  162.     GetDlgItem( IDC_CHECK1 )->ShowWindow( SW_SHOWNA );
  163.     GetDlgItem( IDC_BUTTON1 )->ShowWindow( SW_HIDE );
  164.     }
  165. else if ( szCurrent == "Choice &2" )
  166.     {
  167.     m_szText = "You are on the second panel...";
  168.     GetDlgItem( IDC_CHECK1 )->ShowWindow( SW_SHOWNA );
  169.     GetDlgItem( IDC_BUTTON1 )->ShowWindow( SW_HIDE );
  170.     }
  171. else if ( szCurrent == "Choice &3" )
  172.     {
  173.     m_szText = "You are on the third panel...";
  174.     GetDlgItem( IDC_CHECK1 )->ShowWindow( SW_SHOWNA );
  175.     GetDlgItem( IDC_BUTTON1 )->ShowWindow( SW_HIDE );
  176.     }
  177. else if ( szCurrent == "Choice &4" )
  178.     {
  179.     m_szText = "You are on the panel 4...";
  180.     GetDlgItem( IDC_CHECK1 )->ShowWindow( SW_HIDE );
  181.     GetDlgItem( IDC_BUTTON1 )->ShowWindow( SW_SHOWNA );
  182.     }
  183. else if ( szCurrent == "Choice &5" )
  184.     {
  185.     m_szText = "You are on the panel 5...";
  186.     GetDlgItem( IDC_CHECK1 )->ShowWindow( SW_HIDE );
  187.     GetDlgItem( IDC_BUTTON1 )->ShowWindow( SW_SHOWNA );
  188.     }
  189. else if ( szCurrent == "Choice &6" )
  190.     {
  191.     m_szText = "You are on the panel 6...";
  192.     GetDlgItem( IDC_CHECK1 )->ShowWindow( SW_HIDE );
  193.     GetDlgItem( IDC_BUTTON1 )->ShowWindow( SW_SHOWNA );
  194.     }
  195. UpdateData( FALSE );
  196. }
  197.     
  198.