1. 程式人生 > >MFC(4):靜態文字框使用及在靜態文字框中顯示圖片

MFC(4):靜態文字框使用及在靜態文字框中顯示圖片

=========================靜態文字框====================

類似的QT中的Qlabel
選中static text,由於其預設ID為IDC_STATIC,因此要,右鍵-->屬性-->修改其ID,右鍵-->新增變數(修改訪問屬性、設定變數名)
DoDataExchange()函式會將變數名與控制元件名進行繫結
m_stext.SetWindowText(Cstring str);設定文字內容
m_stext.GetWindowText(Cstring str);獲取文字內容

顯示*.bmp的點陣圖,首先將圖片複製到程式目錄下
OnInitDialog()中寫顯示圖片程式碼:
    //(1)首先設定空間風格
    m_fig.ModifyStyle(0xf, SS_BITMAP | SS_CENTERIMAGE);
    //(2)獲取bitmap控制代碼
    #define HBMP(filePath, width, height)  (HBITMAP)LoadImage(AfxGetInstanceHandle(), filePath, IMAGE_BITMAP, width, height, LR_LOADFROMFILE | LR_CREATEDIBSECTION)
    //(3)獲取控制元件大小
    CRect rect;
    m_fig.GetWindowRect(rect);
    //(4)設定圖片
    m_fig.SetBitmap(HBMP(TEXT("./1.bmp"), rect.Width(), rect.Height()));

m_btn.SetWindowTextW()
m_btn.GetWindowTextW()
m_btn.EnabledWindow(TRUE/FALSE)

小結:首先新增變數,但IDC_STATIC的ID是不能新增變數的,需修改ID
SetWindowText(Cstring str)、SetWindowTextW(Cstring str)
GetWindowText(Cstring str)、GetWindowTextW(Cstring str)
只能顯示BMP型別的圖片
按鈕設定成不可用:EnabledWindow(FALSE)