![]() |
引用:
你只要不取97到122之間的亂數 就不會跳出小寫英文 或是用UCASE()指令也行 (UPPER CASE) |
引用:
那請問我應該用多少為最佳...... |
函數改一下就好了...
Function NewPassword(intLen) Dim tmpSTR Dim i Dim tmp Randomize For i = 1 To intLen tmp = Int(Rnd * (122 - 49) + 49) if (tmp>=58 and tmp<=64) or (tmp>=91 and tmp<=96) then i=i-1 Else tmpSTR = Chr(tmp) NewPassword = NewPassword & tmpSTR End if Next '將亂數結果的小寫英文字轉成大寫 NewPassword = UCASE(NewPassword) End Function |
引用:
有啊~ 您不會是一個個數的吧 只要加個 Label1 再在程式碼最後加上 Label1.Caption = Len(sRnd) 每次運行 Label1都是 顯示20 啊 |
引用:
|
引用:
我想....大大可能誤會我的意思了...我要的是 按下Command 然後再Text3產生"20個英數組成的字串" 而不是顯示"20"這個數字.... |
引用:
Label1.Caption = Len(sRnd) 是為了證明 sRnd這個字串是 "20個英數" 所組成 ※Len 是得到 "字串長度" 的VB保留字 如果要顯示在Text3上: me.caption 是視窗標題 只要改成 Text3.text 就可以了 ================ 為了釐清目的,問一下 試著運行一次得到以下字串 NFHQ0PSN1AUQYU2XFP2I 以上字串不就是 "20個英數組成的字串" 嗎? (還是你另有所指...?) |
Len()指令是return一個字串中有多少位字母
Mini大做出來的Label是幫助你去"認證"亂數變出來的字串是不是長度為20個字元 不用Len()去直接顯示出長度, 你要每次一個一個下去算也是可以 只是比較浪費時間 我們以前在寫程式時 會習慣到處加一兩行CODE去顯示一些重要的參數或數據 就像Mini教你的Len()就是一樣的道理 這一行指令對你本身的PROJECT沒有幫助 但可以方便寫程式或測試程式的人很快得知一些重要的數據 這些另外加上去的CODE通常最後會拿掉, 不會讓使用者看到或用到 |
引用:
感謝大大的指引....現在剩下如何輸入密碼正確時Frame才可以使用((請參照問題2)) 這部分我完全不懂 希望大大可以指引我.... |
Frame可以預設為visible=false
這樣一開始就不會有Frame出現 如果輸入的密碼相同 if text.text=password then frame.visible=true 這樣密碼正確的話Frame就會出現 |
引用:
pw = 77996 If Text4.Text <> pw Then Label15.Caption = "密碼錯誤!" Else Label15.Caption = "登入成功!感謝您使用本程式" End If 說明一下 以上程式碼 當text4輸入77996按下Command檢測正確時Frame(有2個)內的"Check"變為可使用(程式剛啟動時為灰色不可動) 不知道上面的要不要改 以及 Frame 要輸入怎樣的程式碼 |
引用:
這一段是密碼正確時執行 所有你要的功能都加在這行之後 比如說frame.enabled=true |
引用:
|
沒看到CODE不知道你哪個部分語法有錯
我估計可能是東COPY一塊, 西COPY一塊, 湊在一起時出問題 |
引用:
|
所有時間均為台北時間。現在的時間是 10:22 AM。 |
Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2025, Jelsoft Enterprises Ltd.
『服務條款』
* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *