MFC编程问题

月初刚刚接触MFC,现在想写一个软件,用的选项卡式文档程序。有两个问题需要解决:1.我想实现这一功能:当我按空格的时候,在屏幕已有图案的基础上绘制一个圆形。我使用inva... 月初刚刚接触MFC,现在想写一个软件,用的选项卡式文档程序。有两个问题需要解决:1.我想实现这一功能:当我按空格的时候,在屏幕已有图案的基础上绘制一个圆形。我使用invalidate()但这样的话屏幕图案都没了,我只想在原有基础上画一个圆,网上有说可以把背景画刷置为透明,我没看懂,要在哪里加什么语句? 2,想实现下面功能:从某一时刻开始计时,用户按下空格时停止,但是如果用户没有按空格,程序将在3秒后弹出提示,如何实现这一功能?我使用sleep()函数实现计时,但计时的同时不能接受用户的按键信息。。。因为我刚学MFC所以请解释地简单些,告诉我怎么写,在哪里写,谢谢啦 展开
 我来答
lkjhggv
2013-08-19 · TA获得超过3063个赞
知道大有可为答主
回答量:1550
采纳率:66%
帮助的人:1314万
展开全部
1,可以使用双缓存,在内存创建一块画布,每次显示的时候把内存画布里面的东西显示到界面上,每次画图就在内存上画,可以创建画布列表以实现撤销功能,双缓存还能避免闪屏。
2,用定时器。
从某一时刻开始计时(创建3秒定时器),用户按下空格时停止(关闭定时器),但是如果用户没有按空格,程序将在3秒后弹出提示(定时器消息通知)。
任明星Ming
2013-08-19 · TA获得超过798个赞
知道小有建树答主
回答量:1061
采纳率:100%
帮助的人:1149万
展开全部
你思路要理清下,这两个功能都是很好实现的。
在原因基础上画圆圈,那就可以采用PNG的格式图片,因为其本身支持透明背景。
窗口捕获用户空格消息,进行计时判断。你不能在界面UI线程里设定Sleep函数,因为那样的话,窗口会在sleep期间不响应你的任何操作。
建议把它放到一个单独的线程中,或者是用WM_TIMER来做判定。

窗口描绘的问题,我有一个时钟控件,用VC++ WTL写的,你可以用它来做你MFC画圆圈的参考。虽然不是MFC,但是WTL和MFC是相通的。
http://blog.csdn.net/renstarone/article/details/9089835
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
海南小蟋蟀
2013-08-19 · TA获得超过1458个赞
知道小有建树答主
回答量:1638
采纳率:33%
帮助的人:937万
展开全部
不是很建议学MFC,MFC设计的不好太,很不友好。建议使用第三方图形库,例如QT
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
SanLee_
2013-08-19 · 超过16用户采纳过TA的回答
知道答主
回答量:114
采纳率:0%
帮助的人:55.6万
展开全部
1. 没大看懂
2. 添加计时器 SetTimer(); “不能接受用户的按键信息”,是否得多线程实现?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式