设为首页
收藏本站
开启辅助访问
切换到窄版
登录
立即注册
中问网首页
我的收藏
站长博客
搜索
搜索
本版
帖子
用户
第一问答网
»
论坛
›
中问网
›
问答
›
在mfc中有没有办法实现下图中的逐字输出 ...
返回列表
发新帖
在mfc中有没有办法实现下图中的逐字输出
[复制链接]
11
|
4
|
2011-9-6 12:22:00
|
显示全部楼层
|
阅读模式
即使这个图片不是用mfc做出来的,但是有没有办法去实现?用了延迟函数sleep再加上updatedata等函数的组合都不行…
回复
使用道具
举报
千问
|
2011-9-6 12:22:00
|
显示全部楼层
这个可以实现啊,用Timer定时器首先定义一个类变量intm_nCount,在OnInitDialog中初始化为0,然后定义类变量CStringm_str;来表示下边对话框中的文字,把要输出的所有文字赋给这个变量然后在定时器中写下边代码,其中m_edit为编辑框的控件变量voidC*******::OnTimer(UINTnIDEvent){m_nCount;m_edit.SetWindowText(m_str.Left(m_nCount));if(m_nCount==m_str.GetLength()){KillTimer(1);m_nCount=0;}CDialog::OnTimer(nIDEvent);}在解答按钮里面写如下如下代码:其中TIME为文字出现的速度,可以根据实际需求调整,也可以做成变量在程序中可以修改SetTimer(1,TIME,NULL);
回复
使用道具
举报
千问
|
2011-9-6 12:22:00
|
显示全部楼层
给个效率比较低的简单方法:只要是在一个for循环中每次把text中的文字赋值一次就可以了每次多赋值一个字符,赋值之后update就行了不用加sleep,会导致界面死掉的
回复
使用道具
举报
千问
|
2011-9-6 12:22:00
|
显示全部楼层
使用定时器埃每次消息来处理下就可以了。
回复
使用道具
举报
千问
|
2011-9-6 12:22:00
|
显示全部楼层
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
千问
主题
0
回帖
4882万
积分
论坛元老
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
积分
48824836
加好友
发消息
回复楼主
返回列表
问答
热门排行