菜鸟捉虫(41) 老狼 2001年 41期 #1上期正确答案:   在上期的代码中,由于在uses中未加入jpeg单元,所以造成无法识别TJpegImage并无法编译。因此,要解决该问题,只要加入jpeg即可。第二个错误就是ChangeWallPaper函数没有返回值,所以即使墙纸更换了,也没有“墙纸更换成功”的提示出现,只要在ChangeWallPaper函数的最后加上Result:=True即可。   #1获奖名单:   浙 江 林 立 黑龙江 胡 晓   山 东 陈 功 天 津 王严军   四 川 顾 海   以上幸运读者将获得电脑报最新出品的《电脑报系列配套光盘》杂志一套。   #1本期题目:   VB素以简单著称,只需一条赋值语句就可自动完成类型转换,相对其他语言须调用转换函数,简单不少。但如果没有正确检查变量值,则可能造成严重的问题。举个例子,我们期望在一个TextBox中使用户可以输入数字,为此在VB中新建一个工程,在窗口上放置一个TextBox控件,加入如下代码:   Private Sub Text1_KeyDown(KeyCode As Integer,Shift As Integer)   Dim i As Integer '保存转换后值   If(KeyCode <> vbKeyReturn)Then Exit Sub '如果没有输入回车,继续输入   i = Text1.Text '如果输入完毕,将输入值转换后放入变量中   End Sub   看起来没有问题吧?编译不会有任何警告或错误。编译成EXE文件运行一下,如果用户确实输入的是一个数字,不会有问题;另一方面,试着在TextBox中输入一个字母后回车,程序显示“类型不匹配”错误后,将强制关闭。用户根本没有修改的机会。如果在一个大型程序中,用户数据没有保存就发生这种情况,后果如何?请读者朋友们想想是为什么。