高手坐镇(12)

数字职场

编程开发领域很广,开发途中遇到的问题千奇百怪,碰到问题找不到解决方法怎么办?需要高人指点!为此,我们特意开设此栏目,邀请四方开发高手来帮助大家。如果你在开发途中遇到问题,如果你有能力解决这些问题,欢迎与我们联系,来信请发到pcw-chendx@vip.sina.com。

游戏开发书籍推荐

高手:谭剑

题目难度:★★

开发QQ群:我想以后从事游戏开发之类的工作,需要一些什么书?有经验的朋友帮我推荐一下。

3G工程师 谭剑:要想学习游戏开发并从事相关的工作,你首先得选择一门开发语言,目前运用最广泛的是C/C++,这里向你推荐经典书籍《C++开发思想》,然后你得选择开发环境,例如比较常用的Visual C++。

如果时间比较充裕,可以看看《Windows程序设计》。有了一定基础之后,再学习DirectX/OpenGL,DirectX目前只适用于Windows平台,而OpenGL是跨平台的,且OpenGL CE可以适用于嵌入式、移动平台,你可以根据具体需要选择合适的技术。需要说明的是,从事游戏开发,要有一流的数学、算法基础。

自动创建文件

高手:曾虹云

题目难度:★★★

读者来信:我想用VB实现一个功能,每天自动创建一个日志文件,程序写日志文件前先判断文件是否存在,如果存在则打开它,如果不存在则动态创建,请问怎么实现?

高级工程师 曾虹云:我们可以用Object的FileExists方法来判断文件是否存在,然后使用CreateObject来创建文件,使用OpenTextFile来打开文件的方法如下:

首先定义:

Public fs As Object

Public logFileNStr As String

然后在窗体上添加一个按钮,在Click事件中写入下面代码:

Private Sub Command1_Click()

logFileNStr = "D:\AA" + Right(Format(Date, "yyyymmdd"), 5) + ".log" '文件名为(AA+日期).log

Set fs = CreateObject("Scripting.FileSystemObject")

If fs.FileExists(logFileNStr) Then//判断文件是否存在

Set ts = fs.OpenTextFile(logFileNStr, ForAppending) '打开文件

Else

Set ts = fs.CreateTextFile(logFileNStr, True) '创建文件

End If

End Sub

添加退出按钮

高手:曾虹云

题目难度:★★★★

开发QQ群:我想在VB的状态栏上设计一个“退出”按钮,点击按钮后程序退出,请问该功能怎么实现?

高级工程师 曾虹云:可以做,在工具栏上点右键,选择“部件”,在弹出的对话框中选择“Microsoft Windows Common Controls 6.0”,然后在工具栏中选择“StatusBar1”并添加到窗体中,接着在窗体上的StatusBar1上点击右键,选择“属性”,然后在弹出的对话框中选择“窗格”标签(图1),点击“插入窗格”按钮两次,这样StatusBar1就被分成三个栏了,在索引中选择“1”,在“文本”中输入“退出”,“关键字”为“EXIT”,“斜面”为“2”。

12-g13-1-3.jpg
图1

双击StatusBar1切换到代码编辑器,在Click事件中写入即可(图2):

12-g13-1-4.jpg
图2

Private Sub StatusBar1_PanelClick(ByVal Panel As MSComctlLib.Panel)

If UCase(Panel.Key) = "EXIT" Then '如果点击到"退出"按钮则关闭程序

End

End If

End Sub

需要特别注意的是If UCase(Panel.Key) = ”EXIT“ Then 中的EXIT需要全部大写,而在窗体属性中设置的关键字EXIT可以不用大写。

求救问题

问题1:我在自学C语言编程,遇到一个疑问,题目是输入一行字符分别统计出其中英文字母、空格、数字和其他字符的个数,我编写代码后,编译时出现错误信息“expression syntax in function main”,这是怎么回事?

问题2:老师要我们用编程画出中国地图的轮廓,我一点思路都没有,请高手指点。

问题3:请问满二叉树和完全二叉树有什么区别,我很菜,请讲得通俗易懂一点。