zoukankan      html  css  js  c++  java
  • 【MFC 】关于对话框中的OnVScroll() 和 OnHScroll

        对话框中的滑块,微调控件都会向OnVScroll() 和OnHScroll()发送消息。
       所以,要想对滑块,微调控件有效控制,就要对这两个函数(改写对话框的这两个函数)进行控制。
        如:
    ///////////////////////////////////////////////////////////////////////////////////////////////////
    //   控制两个独立的滑块
    ///////////////////////////////////////////////////////////////////////////////////////////////////
        voidCex08aDialog::OnHScroll(UINTnSBCode, UINT nPos, CScrollBar* pScrollBar)
        {
            // TODO:在此添加消息处理程序代码和/或调用默认值
            //Slider
            CSliderCtrl* pSlider =(CSliderCtrl*)pScrollBar;
            CString strText;
           
            switch(pSlider->GetDlgCtrlID() )
            {
               //Slider1
               case IDC_SLIDER1:
                       strText.Format( _T("%d"), pSlider->GetPos() );
                       SetDlgItemText( IDC_STATIC_SLIDER1, strText );
                       break;
               //Slider2
               case IDC_SLIDER2:
                       strText.Format( _T("%3.1f"),dValue[pSlider->GetPos()] );
                       SetDlgItemText( IDC_STATIC_SLIDER2, strText );
                        break;
                //dValue[6]= {1.5, 3.0, 4.5, 6.0, 7.5,8.0};
             }
             CDialog::OnHScroll(nSBCode,nPos, pScrollBar);
         }
     
    ///////////////////////////////////////////////////////////////////////////////////////////////////
    //   控制微调
    ///////////////////////////////////////////////////////////////////////////////////////////////////
         voidCex08aDialog::OnVScroll(UINTnSBCode, UINT nPos, CScrollBar* pScrollBar)
         {
              //TODO: 在此添加消息处理程序代码和/或调用默认值
              if( nSBCode== SB_ENDSCROLL )
             {
                 return;
             }
              //SpinButton
              if(pScrollBar->GetDlgCtrlID() == IDC_SPIN1 )
             {
                 CString strValue;
                 strValue.Format( _T("%3.1f"), (double)nPos / 10.0 );
                 //((CSpinButtonCtrl*)pScrollBar)->GetBuddy()->SetWindowTextW(strValue );
                 CEdit* pEdit =(CEdit*)((CSpinButtonCtrl*)pScrollBar)->GetBuddy();
                 pEdit->SetWindowTextW( strValue );
              }
    
              CDialog::OnVScroll(nSBCode,nPos, pScrollBar);
          }


  • 相关阅读:
    Jmeter -准备篇
    SQL-DELETE
    SQL-UPDATE
    SQL- AND & OR & Order by & INSERT INTO
    SQL-WHERE
    SQL- select distinct
    SQL-select
    【图】max51开发板top页
    simple_spi_top
    UART.V
  • 原文地址:https://www.cnblogs.com/eaglediao/p/7136503.html
Copyright © 2011-2022 走看看