科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道应用软件Visual Basic开发实例 VB.net小问题两例

Visual Basic开发实例 VB.net小问题两例

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

来源:赛迪网 2010年4月2日

关键字:

  • 评论
  • 分享微博
  • 分享邮件

一模拟实现VB6.0中lenB()函数功能

在VB6.0向Vb.net程序转换时,遇到一个问题,即LenB()函数不可用,在vb.net中,求长可直接用.length属性值,但为了程序转换的方便,这一招不太好用,最好还是做个自定义函数。因为 LenB()函数是取得相应字符串的长度,有时在某些小程序里非常管用,但在vb.net中却没有这样的函数,怎么办呢?我们通过下面的自定义函数自己实现一下,算法如下:

1分离字符串中的各字符并将其放入一个数组中

2得到数组长度

Public Function LenB(ByVal oString As String) As Integer
    Dim strArray() As Byte
    Dim Strlen As Integer
    Dim MyEncoder As System.Text.Encoding = System.Text.Encoding.Default
    strArray = MyEncoder.GetBytes(oString)
    Strlen = strArray.Length
    Return Strlen
End Function

二模拟QQ用回车键实现跳转输入框和程序执行

界面上用到两个文本框,分别将其改名即name属性为qqNumbet和qqPwd,对于第二个文本框,还要将passwordChar设置为“.”,这样将来的密码会以点的形式显示出来,此外,还通过pictureBox来做一个按钮,其名即name属性改为login,其本的想法是检查第一个框和第二个框时提示有没有QQ号与密码,当第一个框和第二个框同时输入正确的名与密码,则通过,否则也做出相应提示。

1、跳转输入框及其代码

所谓跳转功能,实质上是转换焦点。在两个文本框中,可以从第一个跳到第二个中,只要执行回车就行,这里主要用到些文本框的KeyPress事件,即按键,这时需要记录按键对应的值,在这里回车的ASCII值是13。当其为13时,将焦点跳到下一文本。

'从用户名框回车跳到密码框

Private Sub qqNumber_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles qqNumber.KeyPress
    If (e.KeyChar = Chr(13)) Then
        qqPwd.Focus()
        e.Handled = True
    End If
  End Sub

2、文本框回车直接执行

这种功能实质上替代了“登录”按钮的功能,节省键盘与鼠标间切换的时间。第二个文本框可以接收回车做为运行的开始,所以其判断同上面类似,只不过判断后的代码不太一样,成为开始时题目的四个分情况要求。

'密码框回车执行

Private Sub qqPwd_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles qqPwd.KeyPress
    If (e.KeyChar = Chr(13)) Then
        If qqNumber.Text = "" Then
          MessageBox.Show("请填写QQ号码", "警告")
        ElseIf qqPwd.Text = "" Then
          MessageBox.Show("请输入QQ密码", "警告")
        ElseIf qqNumber.Text <> "123456" Or qqPwd.Text <> "000000" Then
          MessageBox.Show("QQ号码或密码输入不正确", "提示")
        Else
          MessageBox.Show("QQ登录成功", "提示")
          Me.Close()
        End If
    End If
  End Sub

小结

上述两示例中的功能都非常小,第一个是在从vb6.0转换到Vb.net的朋友可能遇到,由于语言升级出现的不同,系统不能直接完成,就需要我们手工完成一些工作,第二个则是我们在做窗口应用程序经常用到的,使程序更具人性化,更方便用户使用。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章