初学vb.net,这个程序为什么运行不了呢?
本人刚刚开始接触,在网上找了个程序,使用户登陆的,为什么运行不了呢?本文的编程环境是Microsoft Visual Studio 2008简体中文正式版,数据库使用的是ACCESS。我们首先需要创建一个名为data.mdb的数据库(提示:请在C盘新建Database文件夹然后放入data.mdb,如:C:\Database\data.mdb)在数据库中新建<登录>表输入字段的名称:Name和Password 如图1" border="0" />在数据库中添加你所要输入的用户名(Name)与密码(Password),如下图所示:" border="0" />好了我们的数据库已经创建完成了,接下来该启动我们的开发工具VS2008了。
首先打开 Visual Studio2008。在文件 (File) 菜单上,单击新建项目 (New Project)。 在新建项目 (New Project) 对话框的模板 (Templates) 窗格中,单击 Windows 应用程序(Windows Application)。单击确定 (OK)。
在Form1窗体中添加一个Label1控件在Text属性中输入:”恭喜您已经成功完成验证,登录成功!”这是为了方便以后的演示。如图3
" border="0" />我们知道VS2008已经为我们定制了相应的登录验证界面窗体了,这样我们就不需要再去创建一个窗体,而直接使用微软为我们做好的窗体界面吧。选择<项目>--<添加Windows窗体>--选择(登陆窗体)即可。如图4
" border="0" />创建完成后可看到漂亮的登录界面,默认窗体名称为:LoginForm1。我们需要双击窗体进入代码视图,进行声明。图5
" border="0" />图:双击窗体进入代码视图,进行声明
在Public Class LoginForm1事件中输入相应代码:
Dim Conn As OleDb.OleDbConnection
Dim Cmd As OleDb.OleDbCommand
Dim Rd As OleDb.OleDbDataReader
Dim SQL As String
Dim Provider = "Provider=Microsoft.Jet.OLEDB.4.0"
Dim Database = "Data Source=C:\Database\data.mdb"
随后回到LoginForm1界面双击(确定)按钮进入代码视图,在 Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click中输入:
Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click
Conn = New OleDb.OleDbConnection(Provider & ";" & Database)
Conn.Open()
SQL = "Select * From 登录 Where Name='" & UsernameTextBox.Text & "' And Password='" & PasswordTextBox.Text & "'"
Cmd = New OleDb.OleDbCommand(SQL, Conn)
Rd = Cmd.ExecuteReader()
If Rd.Read() Then
Dim form1 As New Form1
form1.Show()
Me.Hide()
Else
MessageBox.Show("密码或用户名错误!", "错误提示!", MessageBoxButtons.OK, MessageBoxIcon.Error)
UsernameTextBox.Text = ""
PasswordTextBox.Text = ""
UsernameTextBox.Focus()
End If
Rd.Close()
Conn.Close()
End Sub
" border="0" />好了基本完成工作了,我们还需要设置WindowsApplication属性,设置的目的是为了程序在开始时先启动LoginForm1窗体界面(也就是登录窗体界面了)选择<项目>---< WindowsApplication属性> 启动窗体设置为LoginForm1如图7" border="0" />图:启动窗体设置为LoginForm1
好了,基本已经完成。我们先运行一下程序吧,输入你起先在数据库中输入好的用户名和密码,然后点击确定,如果输入正确你将看到Form1界面如图8,图9所示
" border="0" />
[[it] 本帖最后由 qq172 于 2008-7-8 10:06 编辑 [/it]]