菜鸟问题,请高手赐教!!!

gimney 2004-12-03 10:44:47
我是VC新手,做一个打字符的游戏时候,碰到几个问题,如字符串下落,我用最基本的的方法就是
dc.SetTextColor(RGB(0,0,0));
c.TextOut(nXPos,j,pChar[i]);
Sleep(300);
设置下落方式,但是前面的痕迹无法去掉,我试着用背景色重画,但是还是有百色的小框框,不知道怎么解决。
第二个问题,我用键盘输入一个字符,并依据此字符确定是否还需要画,来完成打中字符操作,好像我输入字符根本没有办法传入循环中,实现方式如下:
for(int i = 0;i < 100;i ++)
{

int nXPos = (rand()%10)*50 + 100;

for(int j = 55;j < 400;j = j + 50)
{
char cChr = GetChar();
dc.TextOut(30,30,cChr);
if(pChar[i] == cChr)
{
AfxMessageBox("打中了!!!");
break;
}
dc.SetTextColor(RGB(0,0,0));
dc.TextOut(nXPos,j,pChar[i]);
Sleep(300);
}
}
键盘输入的方式如下:
void CGame1View::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags)
{
// TODO: Add your message handler code here and/or call default
if(((nChar >= _T('A'))&&(nChar <= _T('Z')))||((nChar >= _T('a'))&&(nChar <= _T('z'))))
{
cChar = nChar;
}
CView::OnChar(nChar, nRepCnt, nFlags);
}
字符传递:
char CGame1View::GetChar()
{
return cChar;
}
请指正!!!
...全文
106 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
koko1998 2004-12-03
  • 打赏
  • 举报
回复
for(int i = 0;i < 100;i ++)
{

int nXPos = (rand()%10)*50 + 100;

for(int j = 55;j < 400;j = j + 50)
{
char cChr = GetChar();
dc.TextOut(30,30,cChr);
if(pChar[i] == cChr)
{
AfxMessageBox("打中了!!!");
break;
}
dc.SetTextColor(RGB(0,0,0));
dc.TextOut(nXPos,j,pChar[i]);
Sleep(300);
Invalidate(FALSE);//
}
}
oyljerry 2004-12-03
  • 打赏
  • 举报
回复
就是用定时器获得键盘输入,然后再画
xuzheng318 2004-12-03
  • 打赏
  • 举报
回复
Example
This is the example from the CWnd::UpdateWindow method.

// In this example a rectangle is drawn in a view.
// The OnChangeRect() function changes the dimensions
// of the rectangle and then calls CWnd::Invalidate() so the
// client area of the view will be redrawn next time the
// window is updated. It then calls CWnd::UpdateWindow
// to force the new rectangle to be painted.

void CTestView::OnChangeRect()
{
// Change Rectangle size.
m_rcBox = CRect(20, 20, 210, 210);

// Invalidate window so entire client area
// is redrawn when UpdateWindow is called.
Invalidate();

// Update Window to cause View to redraw.
UpdateWindow();
}

// On Draw function draws the rectangle.
void CTestView::OnDraw(CDC* pDC)
{
// .. Other draw code here.

pDC->Draw3dRect(m_rcBox, 0x00FF0000, 0x0000FF00);
}

jack_wq 2004-12-03
  • 打赏
  • 举报
回复
Invalidate()刷新原来的窗口
jack_wq 2004-12-03
  • 打赏
  • 举报
回复
Invalidate()
gimney 2004-12-03
  • 打赏
  • 举报
回复
能把你的思路说一下就好了!
gimney 2004-12-03
  • 打赏
  • 举报
回复
那键盘输入怎么传递了,能不能说明白点,谢谢了!
DentistryDoctor 2004-12-03
  • 打赏
  • 举报
回复
用个定时器。
在OnPaint中输出文本,在OnTimer中InvalidateRect(rect,FALSE);
Mr-Chen 2004-12-03
  • 打赏
  • 举报
回复
在timer中实现循环判断
gimney 2004-12-03
  • 打赏
  • 举报
回复
DentistryDoctor(雅克医生<改行做程序员了>) 和 jack_wq(风尘往事具忘去,心地无私天地宽) ( ) 信回答可以了,如果没有人回答,我揭帖了,分全给他们了!
在线等..............
============================== Copyright (C) 2003-2008 Script Written by 坏孩子 程序名称: 百科知识搜索系统 Ver 1.0 BETA 版 软件类别: ASP源码 / 搜索CMS 软件语言: 简体中文 授权方式: 免费版 系统平台: ASP+Access 程序下载: http://www.baidu.com.cn/s?wd=%B0%D9%BF%C6%D6%AA%CA%B6%CB%D1%CB%F7%CF%B5%CD%B3 官方网址: http://qbar.qq.com/ah4m5a7z/ (QQ论坛) 程序开发: 小治技术 研发中心 EMAIL:xiaovshzi@126.com ============================== 小治技术QQ群:9575165 作者QQ:270612779 ============================== 默认用户:admin 密码:admin(放到网上,建议更改) 数据库链接文件:inc/mdb.asp(第一次使用设置) 数据库文件:@@3$/bkss.mdb(放到网上,建议更改) 有些功能还没实现 代码也没有优化~~测试用的版本~~ 先放出来 大家自己研究玩吧~~等我自己把组织论坛的搞完了就开始写BETA 2版(用大后台支持) 有人也问我是否可以加了采集的功能,可恨本人才疏学浅,无法满足,希望有高手不惜赐教~~~ 界面版权:www.openv.com ============================== 程序介绍: ◎前言:这是应一个MM的要求,搞了一个类似于知识库的系统,为了方便她快速搜索到需要的文章和问题答案,因此就做成了现在这样的搜索为主的cms,里面存放了大约3000篇以上的知识量,涉及到3大类10几个层面,涵盖了衣食住行、生活娱乐、电脑知识、动植物等,甚至是三国演义和西游记全篇,这个文件这么大,就是因为数据库内容太多了!不过这样大家一下下来就能用了! ◎特点:系统用了智能拆分关键字查询和分类别查询,主要就用到3个文件,包括一个错误提示页!后台可要可不要,自己掂量掂量看看是否需要就是! ◎设计:界面比较漂亮,完全是down 别人的,因为过年了,设计师都忙着回家,没空帮我,不过的确很不错,希望你会和我一样喜欢!logo和head 都留空,你可以自己进images修改它,想取什么名称就取什么名称, ◎安全:因为我也要回家过年,而且这本身就只针对MM个人电脑使用,本人没怎么认真对待,(惭愧~~~)但对于普通的菜鸟,应该是没问题的,如果你是入侵高手,建议自己在检测和修缮下,如果可以,到我们的论坛发表下! ◎其他:后台可以设置这个站点的名称和网站开关,也可以屏蔽指定的IP访问,由于我是拷贝CMS的config,因为没有删除其他的内容,(再次惭愧~~,)貌似没什么影响!如果你需要本地测试,建议把数据库备份,然后删除2500篇内容,不然会影响你测试速度,尤其是服务器配置不好的同志! ◎最后:本程序是小治技术社区的坏孩子作品,感谢社区的编程高手对本人给与技术上的指点!发布此版本旨在与众网友交流学习,整理过程中较为仓促,难免有疏漏,大家提出指正。 ============================== -小治技术QQ群:9575165

16,467

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧