求助关于MFC定时器实现红绿灯
mfc吧
全部回复
仅看楼主
level 2
muyexiudong 楼主
void CMyView::OnDraw(CDC* pDC)
{
CMyDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
SetTimer(120,1000,NULL);
}
void CMyView::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default CClientDC dc(this);
CBrush brush1,brush2,brush3,OldBrush;
brush1.CreateSolidBrush(RGB(255,0,0));
brush2.CreateSolidBrush(RGB(255,255,0));
brush3.CreateSolidBrush(RGB(0,255,0));
dc.Ellipse(50,50,100,100);
dc.Ellipse(100,50,150,100);
dc.Ellipse(150,50,200,100);
if(i>130)
{
i=i-130;
} else if(i<=60)
{
str.Format("%d",i);
dc.TextOut(75,100,str);
if(i!=60)
{
dc.SelectObject(&brush1);
dc.Ellipse(50,50,100,100); } i++; }
else if(i>=60&&i<=70)
{
str.Format("%d",(i-60));
dc.TextOut(125,100,str);
if(i!=70)
{
dc.SelectObject(&brush2);
dc.Ellipse(100,50,150,100); }
i++;
}
else if(i>=70 && i<=130)
{
str.Format("%d",(i-70));
dc.TextOut(175,100,str);
if(i!=130)
{
dc.SelectObject(&brush3);
dc.Ellipse(150,50,200,100); }
i++;
}
CView::OnTimer(nIDEvent);
}

2012年07月18日 08点07分 1
level 2
muyexiudong 楼主
这个下面的数字该如何处理,晚上来结贴,希望大家帮帮忙
2012年07月18日 08点07分 2
level 1
楼主请问下str和i的定义在哪里?
2014年10月26日 03点10分 3
level 9
题目要求都没说清楚,别人哪知道你要怎么处理
2014年10月26日 06点10分 4
饿。。我2年前发的帖你们现在回。。我去。。mfc早就不玩了。。哎。。2年可以改变很多
2014年11月25日 11点11分
level 1
现在看过了写的程序,还是有点懵懂,楼主现在看来三年了........不知道还玩不玩贴吧
2017年09月30日 12点09分 5
level 1
现在11年了,我在用vs制作红绿灯[黑线]
2023年09月01日 01点09分 6
有问题,有bug,可以调试,私信。
2023年09月01日 12点09分
level 1
ondraw里面设置定时器?绘制函数又写在定时器函数里???[疑问][疑问][疑问]
2024年06月18日 18点06分 7
1