VC++,用MFC 实现文字滚动

来源:百度知道 编辑:UC知道 时间:2024/05/25 08:17:33
具体的是这样的:
有一个菜单项 ID_TEXTMOVE,它对应的消息处理函数是
C123CView::OnTestMove(),在点击该菜单后,调用消息处理函数,在视图区出现滚动的字幕。
附有源代码最好。
真诚的希望的到你的帮助。
guozhiqian@163.com

1。在C123CView类中添加public成员变量int x;//用来标记字幕显示的横向坐标
并在构造函数中初始化x=50;
2。添加OnTimer消息响应函数,添加代码:
CDC *pDC=GetDC();
pDC->TextOut(x,50,"good");
x++;
3。C123CView::OnTestMove()中添加代码:
SetTimer(1,10,NULL);//每10毫秒调用ontimer函数,如果要改变滚动速度,只要变更函数第二个参数的大小。

这是简单的,如有其他需要在这上面改改就好

程序已发到你油箱

应该不会太难,主要要考虑的问题有:
1. 计时器,在计时器中
a. 把字符的第一位挪到最后一位
b. 调用InvalidateRect(滚动区域);UpdateWindow();
2. 在OnDraw里调用DrawText(...)
3. 中文Unicode问题,建议使用VS2005,有CStringW,如果只是滚动英文的话就简单了。
4. OnTestMove() { OnTimer(); SetTimer(); }
先调用一次OnTimer,立即显示。

我有个做类似东西的视频教程,给我邮箱,我发给你