這是程式代碼
Private Sub Command1_Click()
If txtuname.Text = "" Then
MsgBox "用戶名不能為空,請輸入用戶名!", vbCritical, "提示"
Else
rs.MoveFirst
rs.Find "uname='" & Trim(txtuname.Text) & "'"
If rs.EOF Then
txtuname.Text = ""
txtupwd.Text = ""
txtuname.SetFocus
MsgBox "用戶名輸入錯誤,請選擇!", vbCritical, "提示"
Else
If txtupwd.Text = "" Then
MsgBox "密碼不能為空,請輸入密碼!", vbctitical, "提示"
txtupwd.Text = ""
txtupwd.SetFocus
ElseIf rs.Fields("upwd") = txtupwd.Text Then
Select Case rs.Fields("righ")
Case 0
If cmbright.Text = "管理員" Then
MsgBox "管理員已成功登錄!", vbExclamation, "提示"
Else
MsgBox "您沒有此權限!", vbOKOnly + vbCritical, "提示"
End If
Case 1
If cmbright.Text = "教師" Then
MsgBox "教師已成功登陸!", vbExclamation, "提示"
Else
MsgBox "您沒有此權限!", vbOKOnly + vbCritical, "提示"
End If
Case 2
If cmbright.Text = "學生" Then
MsgBox "學生已成功登錄!", vbExclamation, "提示"
Else
MsgBox "您沒有此權限!", vbOKOnly + vbCritical, "提示"
End If
End Select
Else
MsgBox ("密碼輸入錯誤,請重新輸入!"), vbCritical, "提示"
txtpwd.Text = ""
txtpwd.SetFocus
End If
End If
End If
End Sub
Private Sub Command2_Click()
Unload Me
End Sub
Private Sub Form_Load()
CenterForm Me
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.Open "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=login;Data Source=.\mssql2008"
rs.Open "select * from login ", conn, 2, 2
cmbright.AddItem "管理員"
cmbright.AddItem "教師"
cmbright.AddItem "學生"
End Sub
資料庫連接寫在公共的模塊里面
Public conn As ADODB.Connection
Public rs As ADODB.Recordset
Sub CenterForm(chile As Form)
Dim dw As Integer
Dim dh As Integer
dw = Screen.Width - chile.Width
dh = Screen.Height - chile.Height
chile.Top = dh / 2
chile.Left = dw / 2
End Sub
求高手指教:select方法回傳的結果集rs的.text報錯 我應該怎樣改
uj5u.com熱心網友回復:
哪一句出錯?錯誤資訊?uj5u.com熱心網友回復:
txtuname.Text 報錯編譯錯誤
為找到方法或者資料成員
uj5u.com熱心網友回復:
在表單上放一個 TextBox,名稱改為 txtuname。uj5u.com熱心網友回復:
你表單上輸入用戶名的文本框不是 txtuname。要么改控制元件名要么改代碼。
uj5u.com熱心網友回復:

是這個名稱
uj5u.com熱心網友回復:
報的錯誤是 txtuname.Textuj5u.com熱心網友回復:
屬性對話框顯示的是 txtuname(0),說明這是個控制元件陣列。下面找到 index 屬性,把值 0 清除就可以了。
uj5u.com熱心網友回復:
前一個問題貌似沒問題了可是有來了一個費解的問題


提示說Private Sub Command1_Click()為定義變數
求解釋啊
uj5u.com熱心網友回復:
你把代碼刪掉,直接雙擊控制元件讓系統生成代碼框架。然后把應用代碼加進去。uj5u.com熱心網友回復:
通常是編譯錯誤太多,會導致錯誤指示位置不準確。先將代碼全注釋起來,逐段放開,F5全編譯,修正全部錯誤。
記得要將Options對話框,General頁下的 Compile On Demand 的勾選去掉。
uj5u.com熱心網友回復:
這個是不是掛的馬啊? @bcrun, 版主?
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/110918.html
