Title is No Title

not very good here!

导航

draw on dlg is simple only add some code in func proc. is ok.

void TestDrawDlg::OnOK()
{   Invalidate();
 // TODO: Add extra validation here
 //Invalidate();
 //CDialog::OnOK();
    CPaintDC dc(this);
    CPen MyNewPen;
    COLORREF mm_color=RGB(233,4,5);//dlg.m_color;
    MyNewPen.CreatePen(PS_SOLID,10,mm_color);//RGB(255,0,0)
    CPen* pOriginalPen;
    pOriginalPen=dc.SelectObject(&MyNewPen);
       int m_Radius=45;
    CRect MyRectangle(30,40,20+m_Radius*2,10+m_Radius*2);
    dc.Ellipse(&MyRectangle);
    dc.LineTo(443,444);
   
    dc.SelectObject(pOriginalPen);
   
    //delete dc;

}

void TestDrawDlg::OntestDraw()
{

 
}

BOOL TestDrawDlg::OnInitDialog()
{
 CDialog::OnInitDialog();
 
      int iInstallresult;
   iInstallresult=SetTimer(1,
    2000,
    NULL);

   if(iInstallresult==0)
   {
    MessageBox("cannot install timer!");
   }
     return TRUE;  // return TRUE unless you set the focus to a control
               // EXCEPTION: OCX Property Pages should return FALSE
}

void TestDrawDlg::OnTimer(UINT nIDEvent)
{
 // TODO: Add your message handler code here and/or call default
 //AfxMessageBox("come time");
 //Invalidate();
 //CDialog::OnTimer(nIDEvent);
 //CDialog::OnTimer(nIDEvent);
}

void TestDrawDlg::OnDestroy()
{
 CDialog::OnDestroy();
 
       KillTimer(1);
}

void TestDrawDlg::drawSomeLine()
{
       CPaintDC dc(this);
    CPen MyNewPen;
    COLORREF mm_color=RGB(23,224,5);//dlg.m_color;
    MyNewPen.CreatePen(PS_SOLID,20,mm_color);//RGB(255,0,0)
    CPen* pOriginalPen;
    pOriginalPen=dc.SelectObject(&MyNewPen);
       int m_Radius=45;
    CRect MyRectangle(30,40,20+m_Radius*2,10+m_Radius*2);
    dc.Ellipse(&MyRectangle);
    dc.LineTo(443,444);
    dc.SelectObject(pOriginalPen);
}

void TestDrawDlg::OnDrawSomeLine()
{
Invalidate();
drawSomeLine();
}

void TestDrawDlg::Onclear()
{
Invalidate(); 
}

posted on 2004-03-22 20:29  abraham  阅读(650)  评论(0编辑  收藏  举报