一个最简单的vb打字游戏代码。

46.键盘打字练习计划

这个程序用于打字练习,训练和提高打字速度。可以选择小写字母、大写字母、大小写混合、特殊字符、数字、混合字符、汉字等七种练习方法。

程序启动后,字符随机出现和落下。如果练习者键入的字符是正确的,字符会变红并变大,然后迅速缩小,最后消失。

该程序可以显示练习者的成绩,正确率和每分钟的打字速度。双击练习中的窗口以清除数据并重新开始。练习字母或汉字输入时注意将输入法切换到正确的状态。

'?'下面是表单代码,在?VB6.0?调试通过:

将以下内容放在表单上?6?控件:

?Option1:?用于字符类型选择。

?Label1:用于显示下落的字符。

?Label2:用于显示游戏信息。

?Timer1:用于移动字符。

?Picture1:下落字符的背景

?Text1:用于显示玩家输入的字符。

在“属性”窗口中,设置。Option1?然后呢。Label1?什么事?指数?属性设置为?0,其他控件和属性不需要设置,使用默认属性即可。

如果你想练习打汉字,用记事本在项目所在的目录下创建一个文本文件。文件名是HanZi.txt。

?在该文本文件中输入练习中使用的汉字,如:汉字=中国人* * *和中国,伟大的奥运!

?请注意,输入的前三个字符必须是:中文字符=

本人创作,转载请注明出处:/100 BD/blog/item/633 b 6467 DBF DD 828 aa 184 CDB . html。

暗淡?ctY?作为?单身,?ctCount?作为?龙,?ctFinish?作为?龙,?ctTime?作为?单一的

暗淡?ctSize?作为?单身,?ctStr?作为?字符串,?ctStrS?作为?龙,?ctNoCheck?作为?布尔代数学体系的

私人?Sub?Form_Load()

暗淡?我?作为?长的

我。关键评论?=?真实:?我。标题?=?《键盘打字速度练习》

Text1。文字?=?"":?ctSize?=?36?显示字符大小

我。背景色?=?RGB(50,?50,?155):?图片1。背景色?=?RGB(100,?100,?255)

标签2。背景色?=?我。背景色:?标签2。前景色?=?& ampHFFFFFF

标签2。标题?=?“成绩:?0%":?标签2。自动调整大小?=?真实:?用于显示性能信息。

我。搬家?屏幕。宽度?*?0.1,?屏幕。身高?*?0.1,?屏幕。宽度?*?0.8,?屏幕。身高?*?0.8

设置?Label1(0)。集装箱?=?图片1

Label1(0).Font.Bold?=?真实:?Label1(0)。背景风格?=?0?用于显示行踪的字符。

Label1(0)。使用记忆法?=?假:?Label1(0)。自动调整大小?=?真实的

为了什么?我?=?0?去哪?4?同时出现的字符数,设置为。5、可修改

如果?我?& gt?0?然后呢?加载?标签1(I)

然后

Option1(0)。背景色?=?我。背景色:?Option1(0)。前景色?=?& ampHFFFFFF

为了什么?我?=?0?去哪?六

如果?我?& gt?0?然后呢?加载?选项1(I)

然后

Option1(0)。标题?=?“小写字母”:选项1(1)。标题?=?"大写字母"

选项1(2)。标题?=?“大小写混合字母”:选项1(3)。标题?=?"特殊字符"

选项1(4)。标题?=?“数字”:选项1(5)。标题?=?"混合字母和字符"

选项1(6)。标题?=?“汉字”:

为了什么?我?=?0?去哪?选项1。数数?-?1

选项1(I)。可见?=?真实的

然后

Option1(0)。价值?=?真实的

打电话?开始播放

ctY?=?图片1。ScaleY(5,3,?图片1。ScaleMode)?人物下降速度(此处?5?像素),可以修改。

定时器1。启用?=?真实:?定时器1。区间?=?50

结束?潜水艇

私人?Sub?表单_激活()

开?错误?简历?然后

Text1。SetFocus

结束?潜水艇

私人?Sub?Text1_Change()

暗淡?我?作为?长的

如果?ctNoCheck?还是?Len(Text1。正文)?& lt?11?然后呢?退出?潜水艇

ctNoCheck?=?真实的

我?=?Text1。SelStart:如果?我?=?0?然后呢?我?=?1

Text1。文字?=?Mid(Text1。文字,?我,?1)

Text1。SelStart?=?Len(Text1。正文)

ctNoCheck?=?错误的

结束?潜水艇

私人?Sub?Form_KeyPress(KeyAscii?作为?整数)

暗淡?我?作为?龙,?nStr?作为?字符串,?t?作为?单一的

nStr?=?人权专员(KeyAscii)

如果?nStr?=?"?"?然后呢?nStr?=?"(空间)"

为了什么?我?=?0?去哪?Label1。数数?-?1

如果?nStr?=?Label1(I)。标题?然后呢。Label1(I)。标签?=?"1"?然后

Label1(I)。前景色?=?255:?Label1(I)。标签?=?"2"

Label1(I).Font.Size?=?ctSize?*?四

t?=?图片1。ScaleHeight?-?Label1(I)。高度

如果?Label1(I)。Top?& gt?t?然后呢?Label1(I)。Top?=?T

ctFinish?=?ctFinish?+?1:?打电话?ShowInf

退出?潜水艇

结束?如果

然后

结束?潜水艇

私人?Sub?ShowInf()

暗淡?nStr?作为?字符串,?t?作为?龙,?m?作为?龙,?h?作为?龙,?StrT?作为?字符串,?v?作为?长的

如果?ctCount?& gt?0?然后呢?nStr?=?格式(ctFinish?/?ctCount?*?100,?"0.0")?不然呢?ctCount?=?"0"

nStr?=?"正确率:"?& amp?nStr?& amp?"%"

nStr?=?"总计:"?& amp?ctCount?& amp?vbCrLf?& amp?vbCrLf?& amp?“正确:“?& amp?ctFinish?& amp?vbCrLf?& amp?vbCrLf?& amp?nStr

t?=?Int(定时器?-?ctTime)

如果?t?& gt?0?然后呢?v?=?ctFinish?/?t?*?60

h?=?t?\?3600:?t?=?t?Mod?3600

m?=?t?\?60:?t?=?t?Mod?60

如果?h?& gt?0?然后呢?StrT?=?h?& amp?":"

如果?h?& gt?0?还是?m?& gt?0?然后呢?StrT?=?StrT?& amp?m?& amp?"'"

StrT?=?" 12:34'"'****调试代码

nStr?=?nStr?& amp?vbCrLf?& amp?vbCrLf?& amp?"时间:"?& amp?StrT?& amp?t?& amp?""""

标签2。标题?=?nStr?& amp?vbCrLf?& amp?vbCrLf?& amp?“速度”:& amp?v?& amp?"字/分钟"

结束?潜水艇

私人?Sub?Form_Resize()

暗淡?我?作为?龙,?l?作为?单身,?t?作为?单身,?w?作为?单身,?h?作为?单身,?MaxW?作为?单一的

Text1。字体。大小?=?16:?标签2。字体。大小?=?12

H1?=?我。TextHeight("1 ")

l?=?H1:?t?=?H1

为了什么?我?=?0?去哪?选项1。数数?-?1

选项1(I)。可见?=?真实:?w?=?我。TextWidth(选项1(I))。标题?& amp?"123456")

如果?MaxW?& lt?w?然后呢?MaxW?=?W

选项1(I)。搬家?l,?t,?w,?H1?*?1.25

t?=?t?+?H1?*?1.5

然后

标签2。搬家?l?*?0.8,?t?+?H1

h?=?我。ScaleHeight?-?Text1。高度

l?=?l?+?MaxW:?w?=?我。ScaleWidth?-?L

如果?w?& gt?0?然后呢。h?& gt?0?然后呢?图片1。搬家?l,?0,?w,?H

w?=?我。ScaleWidth?-?L

如果?w?& gt?0?然后呢?Text1。搬家?l,?图片1。身高,?W

结束?潜水艇

私人?Sub?Picture1_Click()

Text1。SetFocus

结束?潜水艇

私人?Sub?Picture1_DblClick()

打电话?开始播放

结束?潜水艇

私人?Sub?开始播放()

ctFinish?=?0:?ctCount?=?0:?ctTime?=?计时器

为了什么?我?=?0?去哪?Label1。数数?-?1

Label1(I)。标签?=?"":?Label1(I)。可见?=?错误的

然后

结束?潜水艇

私人?Sub?Option1_Click(Index?作为?整数)

GetStr?索引

打电话?开始播放

开?错误?简历?然后

Text1。SetFocus

结束?潜水艇

私人?Sub?GetStr(nMode?作为?整数)

暗淡?Str1?作为?字符串,?Str2?作为?弦,?Str3?作为?线

Str1?=?"?abcdefghijklmnopqrstuvwxyz "

Str2?=?"?~!@#$%^&;*()_+|-= \ { }:" " & lt;& gt?[];',./"

Str3?=?"0123456789"

选择?案子?nMode

案子?1:?ctStr?=?UCase(Str1)?大写字母

案子?2:?ctStr?=?Str1?& amp?UCase(Str1)?混合大小写字母

案子?3:?ctStr?=?Str2:'特殊字符

案子?4:?ctStr?=?Str3:'数字

案子?5:?ctStr?=?Str1?& amp?UCase(Str1)?& amp?Str2?& amp?Str3?混合大小写和特殊字符

案子?6:?ctStr?=?ReadText():?汉字

案子?否则:?ctStr?=?Str1:'小写字母

结束?挑选

ctStrS?=?镜头(ctStr)

结束?潜水艇

私人?功能?ReadText()?作为?线

从文本文件中读出汉字来练习汉字。

暗淡?f?作为?字符串,?h?作为?龙,?nStr?作为?线

开?错误?GoTo?氧化铜

f?=?App。小路

如果?右(F,?1)?& lt& gt?"\"?然后呢?f?=?f?& amp?"\"

f?=?f?& amp?" HanZi.txt "

h?=?自由文件

开放?f?为了什么?输入?作为?#H

线?输入?#H,?nStr

接近?#H

如果?左(nStr,3)?& lt& gt?“汉字=?然后呢?GoTo?厝?检查文件标签

nStr?=?Trim(Mid(nStr,4))

如果?nStr?=?""?然后呢?GoTo?氧化铜

ReadText?=nStr

ReadText?=?“中华人民共和国”??* * * *调试代码

退出?功能

cuo:

ReadText?=?"错误"

结束?功能

私人?Sub?RndStr(我?作为?龙)

随机字符和位置

静电?xUp?作为?单一的

暗淡?x?作为?单身,?w?作为?单身,?s?作为?长的

如果?Label1(I)。标签?& lt& gt?""?然后呢?退出?潜水艇

Label1(I).Font.Size?=?ctSize:?Label1(I)。前景色?=?& ampHFFFFFF

随机化:?s?=?1?+?Int(Rnd?*?ctStrS):?Label1(I)。标题?=?Mid(ctStr,?s,?1)?随机字符

如果?Label1(I)。标题?=?"?"?然后呢?Label1(I)。标题?=?"(空间)"

使不规则化

w?=?图片1。刻度宽度

做什么?随机位置:确保没有重叠。

x?=?Rnd?*?(W?-?Label1(I)。宽度)

s?=?s?+?1

如果?s?& gt?100?还是?w?& lt?Label1(I)。宽度?*?2?然后呢?退出?做

如果?Abs(xUp?-?x)?& gt?Label1(I)。宽度?然后呢?退出?做

Label1(I)。搬家?x,?-ctY

xUp?=?x

Label1(I)。可见?=?真实:?Label1(I)。标签?=?"1"

ctCount?=?ctCount?+?1:?打电话?ShowInf

结束?潜水艇

私人?Sub?定时器1 _定时器()

暗淡?我?作为?龙,?NextI?作为?龙,?s?作为?单身,?Have1?作为?布尔,?t?作为?长的

为了什么?我?=?0?去哪?Label1。数数?-?1

如果?Label1(I)。标签?& lt& gt?""?然后

Have1?=?真实的

Label1(I)。Top?=?Label1(I)。Top?+?ctY

如果?Label1(I)。标签?=?"2"?然后呢?击中了角色。

s?=?Label1(I).Font.Size?*?0.7

如果?s?& gt?3?然后呢?Label1(I).Font.Size?=?s?不然呢?Label1(I)。标签?=?"":?Label1(I)。可见?=?错误的

结束?如果

如果?Label1(I)。Top?& gt?图片1。ScaleHeight?然后呢?Label1(I)。标签?=?"":?Label1(I)。可见?=?错误的

如果?Label1(I)。Top?& gt?图片1。ScaleHeight?*?0.2?然后呢?超过表单的高度?1/5?,出现下一个字符

NextI?=?我?+?1

如果?NextI?& gt?Label1。数数?-?1?然后呢?NextI?=?0

RndStr?NextI

结束?如果

结束?如果

然后

如果?不是吗?Have1?然后呢?RndStr?0?都消失了。

t?=?t?+?定时器1。间隔

如果?t?& gt?200?然后呢?t?=?0:?打电话?ShowInf

结束?潜水艇

本人创作,转载请注明出处:/100bd/blog/item/633 b 6467 DBF DD 828 aa 184 CDB . html参考:/100 BD。