北京电大VisualBasic程序设计第4章VB高级语言技巧.ppt

北京电大VisualBasic程序设计第4章VB高级语言技巧.ppt

  1. 1、本文档共98页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Visual Basic 程序设计 第 4 章 VB高级语言技巧 4.1 多功能计算器任务 4.1.1 任务描述 在第三章简单计算器的基础,增加以下功能: 1. 将计算结果转换为十六进制。 2. 就数字键设置为命令按钮组,使“0”~“9”数字按键的Index属性分别为0、1、2、3、4、5、6、7、8、9。 3.禁止键盘在文本框中输入数据。 4.使计算器总是悬浮在其它窗体上。 界面如下页所示。 4.1.2 界面设计 1. 添加“十六进制”和“数字大写”两个文本框,分别命名为txtHex和txtBig。 2.删除原来的“0”~“9”数字按钮控件,并重新放置一个命令按钮控件,将其Caption属性设置为“0”。 3.复制该数字命令按钮。 4.在数字区框架控件上,粘贴该数字命令按钮,系统询问是否创建一个控件数组,回答“是”。将它的Caption属性改为“1”,Index属性值设置为1。 按照上述方法粘贴数字按钮控件“2”~“9”。 5、此时得到一 个按钮控件数组“0”~“9”,它们的Index书香依次为“0”~“9”。 6、将TxtBig的ToolTipText属性设置为“大写数字”。 4.1.3 代码设计 1.用API函数实现“总在前面”效果 (1)程序代码 在代码编辑器的“通用”部分声明SetWindowPos函数及相关常数: Private Declare Function SetWindowPos Lib user32 _ (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, _ ByVal x As Long, ByVal y As Long, ByVal cx As Long, _ ByVal cy As Long, ByVal wFlags As Long) As Long Private Const HWND_TOPMOST = -1 Private Const SWP_NOMOVE = H2 Private Const SWP_NOSIZE = H1 然后在Form的Load事件中加入以下代码: SetWindowPos hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE (1)API函数调用的一般方法 要在VB中使用API函数,首先要在工程的标准模块(Module)或窗体的代码的“通用”部分中声明它,然后可以按照调用VB其它函数一样来使用它。获得函数声明的一般方法: 在安装VB系统后,通常会在VB程序组中看到“API文本浏览器”的应用程序。 步骤如下: 沿[开始]-[程序]-[Microsoft Visual Studio 6.0]-[Microfoft Viaual Stodio 6.0 Tools]-[API Text Wiewer]找到API浏览器。 第1步:启动“API文本浏览器” 第2步:选择“文件-加载文本文件”菜单项 加载WinAPI.txt文件。 第3步:选择API类型:声明 第4步:选择立刻用项SetWindowPos,将声明范围设置为“私有”。 按添加按钮。 第5步:就选定项下的VB代码复制 第5步:将复制的VB代码粘贴到窗体代码编辑器中的“通用-声明”部分。 习题 P115 一、单项选择题 2. 能够实现“窗体总在最前端”界面效果的API函数是( )。 A. SetWindowPos B. SetWindowAPI C. SetWindowShape D. DeclareAPI 答案:A 2. 数字区命令按钮的Click事件 Private Sub Command1_Click(Index As Integer) 使用Str函数将Index转换为字符串,然后使用Trim函数去掉前后空格 If txtLabel.Text = Then txtFirst.Text = txtFirst.Text + Trim(Str(Index)) Else txtSecond.Text = txtSecond.Text + Trim(Str(Index)) End If End Sub 3. 禁止用户在文本框中输入数字 Private Sub txtResult_KeyDown(KeyCode As Integer, Shift As Integer) KeyCode = 0 禁止所有的键盘输入(除BackSpace退格键外) End Sub Private Sub txtResult_KeyPress(KeyAscii As Integer) KeyAscii = 0 禁止BackSpace

文档评论(0)

junjun37473 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档