home *** CD-ROM | disk | FTP | other *** search
/ Prima Shareware 3 / DuCom_Prima-Shareware-3_cd1.bin / PROGRAMO / VB40 / SLIDER / DEMODLG.CPP < prev    next >
Encoding:
C/C++ Source or Header  |  1996-04-14  |  4.3 KB  |  193 lines

  1. // DemoDlg.cpp : implementation file
  2. //
  3.  
  4. #include "stdafx.h"
  5. #include "Demo.h"
  6. #include "DemoDlg.h"
  7.  
  8. #ifdef _DEBUG
  9. #define new DEBUG_NEW
  10. #undef THIS_FILE
  11. static char THIS_FILE[] = __FILE__;
  12. #endif
  13.  
  14. /////////////////////////////////////////////////////////////////////////////
  15. // CDemoDlg dialog
  16.  
  17. CDemoDlg::CDemoDlg(CWnd* pParent /*=NULL*/)
  18.     : CDialog(CDemoDlg::IDD, pParent)
  19. {
  20.     //{{AFX_DATA_INIT(CDemoDlg)
  21.     m_innerbevelbtn = 0;
  22.     m_orientationbtn = 0;
  23.     m_outerbevelbtn = 1;
  24.     //}}AFX_DATA_INIT
  25.     m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
  26. }
  27.  
  28. void CDemoDlg::DoDataExchange(CDataExchange* pDX)
  29. {
  30.     CDialog::DoDataExchange(pDX);
  31.     //{{AFX_DATA_MAP(CDemoDlg)
  32.     DDX_Control(pDX, IDC_POS, m_pos);
  33.     DDX_Control(pDX, 1013, m_slider);
  34.     DDX_Radio(pDX, IDC_RADIO8, m_innerbevelbtn);
  35.     DDX_Radio(pDX, IDC_RADIO5, m_orientationbtn);
  36.     DDX_Radio(pDX, IDC_RADIO3, m_outerbevelbtn);
  37.     //}}AFX_DATA_MAP
  38. }
  39.  
  40. BEGIN_MESSAGE_MAP(CDemoDlg, CDialog)
  41.     //{{AFX_MSG_MAP(CDemoDlg)
  42.     ON_WM_PAINT()
  43.     ON_WM_QUERYDRAGICON()
  44.     ON_BN_CLICKED(IDC_RADIO8, OnRadio8)
  45.     ON_BN_CLICKED(IDC_RADIO7, OnRadio7)
  46.     ON_BN_CLICKED(IDC_RADIO6, OnRadio6)
  47.     ON_BN_CLICKED(IDC_RADIO3, OnRadio3)
  48.     ON_BN_CLICKED(IDC_RADIO2, OnRadio2)
  49.     ON_BN_CLICKED(IDC_RADIO1, OnRadio1)
  50.     ON_BN_CLICKED(IDC_RADIO5, OnRadio5)
  51.     ON_BN_CLICKED(IDC_RADIO4, OnRadio4)
  52.     //}}AFX_MSG_MAP
  53. END_MESSAGE_MAP()
  54.  
  55. /////////////////////////////////////////////////////////////////////////////
  56. // CDemoDlg message handlers
  57.  
  58. BOOL CDemoDlg::OnInitDialog()
  59. {
  60.     CDialog::OnInitDialog();
  61.  
  62.     SetIcon(m_hIcon, TRUE);            // Set big icon
  63.     SetIcon(m_hIcon, FALSE);        // Set small icon
  64.     
  65.     // TODO: Add extra initialization here
  66.     
  67.     return TRUE;  // return TRUE  unless you set the focus to a control
  68. }
  69.  
  70. // If you add a minimize button to your dialog, you will need the code below
  71. //  to draw the icon.  For MFC applications using the document/view model,
  72. //  this is automatically done for you by the framework.
  73.  
  74. void CDemoDlg::OnPaint() 
  75. {
  76.     if (IsIconic())
  77.     {
  78.         CPaintDC dc(this); // device context for painting
  79.  
  80.         SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);
  81.  
  82.         // Center icon in client rectangle
  83.         int cxIcon = GetSystemMetrics(SM_CXICON);
  84.         int cyIcon = GetSystemMetrics(SM_CYICON);
  85.         CRect rect;
  86.         GetClientRect(&rect);
  87.         int x = (rect.Width() - cxIcon + 1) / 2;
  88.         int y = (rect.Height() - cyIcon + 1) / 2;
  89.  
  90.         // Draw the icon
  91.         dc.DrawIcon(x, y, m_hIcon);
  92.     }
  93.     else
  94.     {
  95.         CDialog::OnPaint();
  96.     }
  97. }
  98.  
  99. HCURSOR CDemoDlg::OnQueryDragIcon()
  100. {
  101.     return (HCURSOR) m_hIcon;
  102. }
  103.  
  104. BEGIN_EVENTSINK_MAP(CDemoDlg, CDialog)
  105.     //{{AFX_EVENTSINK_MAP(CDemoDlg)
  106.     ON_EVENT(CDemoDlg, 1013, 1 /* Scroll */, OnScrollSlider, VTS_I2)
  107.     ON_EVENT(CDemoDlg, 1011, 1 /* Scroll */, OnScrollTickMarks, VTS_I2)
  108.     ON_EVENT(CDemoDlg, 1012, 1 /* Scroll */, OnScrollCenterBar, VTS_I2)
  109.     ON_EVENT(CDemoDlg, 1010, 1 /* Scroll */, OnScrollBorderWidth, VTS_I2)
  110.     ON_EVENT(CDemoDlg, 1009, 1 /* Scroll */, OnScrollInnerBevelWidth, VTS_I2)
  111.     ON_EVENT(CDemoDlg, 1008, 1 /* Scroll */, OnScrollOuterBevelWidth, VTS_I2)
  112.     //}}AFX_EVENTSINK_MAP
  113. END_EVENTSINK_MAP()
  114.  
  115. void CDemoDlg::OnScrollSlider(short value) 
  116. {
  117.     CString temp;
  118.     temp.Format("%d", value);
  119.     m_pos.SetWindowText(temp);
  120.     
  121. }
  122.  
  123. void CDemoDlg::OnScrollTickMarks(short value) 
  124. {
  125.     m_slider.SetTickMarks(value);    
  126. }
  127.  
  128. void CDemoDlg::OnScrollCenterBar(short value) 
  129. {
  130.     m_slider.SetCenterBar(value);    
  131. }
  132.  
  133. void CDemoDlg::OnScrollBorderWidth(short value) 
  134. {
  135.     m_slider.SetBorderWidth(value);    
  136. }
  137.  
  138. void CDemoDlg::OnScrollInnerBevelWidth(short value) 
  139. {
  140.     m_slider.SetInnerBevelWidth(value);    
  141. }
  142.  
  143. void CDemoDlg::OnScrollOuterBevelWidth(short value) 
  144. {
  145.     m_slider.SetOuterBevelWidth(value);    
  146. }
  147.  
  148. void CDemoDlg::OnRadio8() 
  149. {
  150.     UpdateData();
  151.     m_slider.SetInnerBevel(m_innerbevelbtn);
  152. }
  153.  
  154. void CDemoDlg::OnRadio7() 
  155. {
  156.     OnRadio8();
  157. }
  158.  
  159. void CDemoDlg::OnRadio6() 
  160. {
  161.     OnRadio8();
  162. }
  163.  
  164. void CDemoDlg::OnRadio3() 
  165. {
  166.     UpdateData();
  167.     m_slider.SetOuterBevel(m_outerbevelbtn);
  168. }
  169.  
  170. void CDemoDlg::OnRadio2() 
  171. {
  172.     OnRadio3();
  173. }
  174.  
  175. void CDemoDlg::OnRadio1() 
  176. {
  177.     OnRadio3();
  178. }
  179.  
  180. void CDemoDlg::OnRadio5() 
  181. {
  182.     UpdateData();
  183.     m_slider.SetOrientation(m_orientationbtn);
  184.     m_slider.MoveWindow(17, 96, 201, 32);
  185. }
  186.  
  187. void CDemoDlg::OnRadio4() 
  188. {
  189.     UpdateData();
  190.     m_slider.SetOrientation(m_orientationbtn);
  191.     m_slider.MoveWindow(98, 7, 31, 173);
  192. }
  193.