學習使用CBitmapButton類-----初學MFC



剛開始學習MFC,在經過論壇文章使用CBitmapButton類的時候,按照以下作法(網上大神寫的):函數

/////////////////////////////////////////////////////////////////////////////////////////////學習

  1. 在資源編輯的時候選中按鈕的 Owner draw 便可,不須要選擇 Bitmap 屬性
    2
    、在程序中定義一個CBitmapButton成員變量。
     
    不能使用ClassWizard爲按鈕映射一個CButton變量,而後改成CBitmapButton
     
    這麼作並不能將按鈕直接映射爲CBitmapButton類的對象,反而會出現初始化錯誤。 
    3-1
    、使用CBitmapButton::LoadBitmaps裝載各類狀態的圖片,
     
    使用SubclassDlgItem關聯到想要的按鈕,
     
    使用CBitmapButton::SizeToContent函數使按鈕適合圖片大小。
     
    注意Loadbitmaps必定要在關聯到按鈕以前進行! 
    3-2
    、或者是使用CBitmapButton::AutoLoad函數關聯到想要的按鈕。須要注意:
     A
    、以前不能使用CBitmapButton::LoadBitmaps裝載各類狀態的圖片,不然會出錯。
     B
    AutoLoad函數完成的關聯和改變按鈕大小的CBitmapButton::SizeToContent函數的功能。
     C
    CBitmapButton::AutoLoad使用的位圖是默認資源ID的,
      
    即它會自動裝載相關資源位圖。
      
    位圖的資源ID格式爲:
      "
    按鈕Caption+U""按鈕Caption+D""按鈕Caption+F""按鈕Caption+X"
      
    分別表明UpDownFocusDisable狀態。
      
    如資源編輯時,但願關聯的按鈕的CaptionTest
      
    那麼其默認裝載的位圖資源的ID爲:"TestU"/"TestD"/"TestF"/"TestX"
      
    注意分號""也是其ID的一部分。
    spa

    ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////orm

老是出現對象

因爲對MFC的不熟悉,研究了很久,終於找到問題所在,緣由是:圖片

void CMyDlg::DoDataExchange(CDataExchange*pDX)資源

{it

      CDialog::DoDataExchange(pDX);io

      DDX_Control(pDX, IDC_BUTTON1,m_mapButton);//這句話的意思是將IDC_BUTTON1 m_mapButton綁定,從而致使出現這種錯誤,對於這個函數的做用就不說了;這句話去掉就Ok了!class

}

發現錯誤是一種樂趣,不是嗎?特地記下本身學習過程當中的Error,學習是一個不斷犯錯不斷改錯的過程,Indeed

相關文章
相關標籤/搜索