學生資訊管理系統總結(二)
阿新 • • 發佈:2018-11-24
- 限制文字框輸入的必須是數字
Private Sub Text1_KeyPress(KeyAscii As Integer)
If (KeyAscii < 48 Or KeyAscii > 57) Then
keyAscii = 0
End if
End sub
- 限制文字框輸入的必須是大寫字母
Private Sub Text1_KeyPress(KeyAscii As Integer) If (KeyAscii < 65 Or KeyAscii > 90) Then keyAscii = 0 End if End sub
- 按刪除鍵則退出程式
If KeyAscii = 8 Then Exit Sub
- 只可以輸入數字和字母
Private Sub Text1_KeyPress(KeyAscii As Integer)
If ((KeyAscii >= 48 And KeyAscii <= 57) Or (KeyAscii >= 65 And KeyAscii <= 90) Or (KeyAscii >= 97 And KeyAscii <= 122)) = False Then KeyAscii = 0
End Sub
- 只可以輸入漢字
Private Sub Text1_KeyPress(KeyAscii As Integer)
If ((KeyAscii <= -3652 And KeyAscii >= -20319) Or (KeyAscii >= 65 And KeyAscii <= 90) Or (KeyAscii >= 97 And KeyAscii <= 122) Or KeyAscii = 32 Or KeyAscii = 8) = False Then
KeyAscii = 0
End If
End Sub
- 日曆控制元件的新增
步驟如下:
工具欄 → 部件控制元件 → Microsoft Windows controls-2.6(sp4或sp5),完成新增。(如下圖:DTpicker即為該控制元件)
- sbstatusbar.panels(1).text="新增使用者"
主要目的:
在SbStatusBar這個控制元件的狀態列顯示“新增使用者”這四個字,panels的意思是空白窗格,panels(1)就是第一個空白窗格
如圖:
錯誤提示
原因是:
輸入的資料違反了資料庫的約束條件;
欄位大小超過限制提交的資料個數;
欄位資料型別不匹配;
自動編號指定了值;
或者自動編號末未做自動賦值、欄位不允許為空值等。
另外,檢查你的外來鍵約束之類,如觸發器,是否表中無主鍵
解決辦法:
針對Text進行具體限定。
VB中限定text輸入框中輸入的字數,有兩種方法可以實現:
1、直接在text文字框屬性中定義MaxLength的值,MaxLength是設定文字框允許輸入的字元最大數。超過設定數後,將不允許繼續輸入內容。
2、程式碼實現: Private Sub Text1_Change()
If Len(Text1) >= 160 Then MsgBox “你已經輸入了160個字,已到最大字元數!” End Sub
如果使用vb設定後還無法執行成功,那就要去資料庫中檢視一下了,資料庫中該表的該資料設定長度要與在text屬性中設定的長度一致或者大於text中設定的長度。
【建議:在vb中限定的長度要小於資料庫中的指定長度,畢竟涉及到一個漢字會佔用多個位元組,但是在輸入中卻只顯示為一個字元的情況】
原因:
在資料庫中“課程編號”的資料型別已經定義為int型別,在輸入框中輸入了漢字,導致資料型別不匹配,窗體報錯
解決:
對其txtcourseno進行限定,限定文字框只能輸入數字,具體程式碼如下:
Private Sub txtCourseno_KeyPress(KeyAscii As Integer)
If (KeyAscii < 48 Or KeyAscii > 57) Then
keyAscii = 0
End if
End sub