當前位置:編程學習大全網 - 編程軟體 - 用VC編程,怎樣能在界面中添加壹個紅色指示燈

用VC編程,怎樣能在界面中添加壹個紅色指示燈

自畫按鈕啊

壹,新建壹個基於對話框的工程Dlg。

二,增加兩個按鈕,ID分別為IDC_BUTTON1、IDC_BUTTON2,第壹個選中“自畫”屬性。

三,在CDlgDlg類增加壹個變量bool m_bStart ;並在構造函數中將它賦初值為false;

CDlgDlg::CDlgDlg(CWnd* pParent /*=NULL*/)

: CDialog(CDlgDlg::IDD, pParent)

{

m_bStart = false ;

//{{AFX_DATA_INIT(CDlgDlg)

// NOTE: the ClassWizard will add member initialization here

//}}AFX_DATA_INIT

// Note that LoadIcon does not require a subsequent DestroyIcon in Win32

m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);

}

四,雙擊第二個按鈕,為它增加響應函數,代碼如下:

void CDlgDlg::OnButton2()

{

m_bStart = !m_bStart ;

Invalidate();

}

五,利用類向導在類為WM_DRAWITEM增加響應函數,代碼如下:

void CDlgDlg::OnDrawItem(int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct)

{

if( IDC_BUTTON1 == nIDCtl )

{

CDC dc;

dc.Attach(lpDrawItemStruct->hDC);

CBrush brush(RGB(255,0,0));

if( m_bStart )

{

dc.SelectObject(&brush);

}

CPoint pt(lpDrawItemStruct->rcItem.left,lpDrawItemStruct->rcItem.top);

dc.Ellipse(&lpDrawItemStruct->rcItem);

}

else

CDialog::OnDrawItem(nIDCtl, lpDrawItemStruct);

}

  • 上一篇:汽車上以單片機為核心的控制系統有哪些
  • 下一篇:前輩們 CATIA怎麽打開UG文件
  • copyright 2024編程學習大全網