![]() |
![]() |
#1 |
註冊會員
|
![]() -------------------- 閱讀本主題的最佳解答 -------------------- 我想要製作 按下Command 而Textbox 就會隨機出現英文與數字結合一串文字 共20字 那請問程式碼該如何設定 請高手回答..謝謝 第2問題 Dim pw As String pw = 77996 If Text4.Text <> pw Then Label15.Caption = "密碼錯誤!" Else Label15.Caption = "登入成功!感謝您使用本程式" End If 我利用這個 來作為程式登錄密碼的用途(設定在Command)... 在程式剛啟動時 Frame 皆為灰色無法按的狀態 但當密碼判斷正確時 Frame則恢復到可以按 這部份我完全不會...希望可以交一下 ((Frame有2個...) 此帖於 2009-05-23 10:34 PM 被 kppne0931 編輯. |
![]() |
送花文章: 77,
![]() |
![]() |
#7 (permalink) | |
註冊會員
|
![]() 引用:
這是我最近在網路上找的 這是貼在 Command 的 我按下 真的有產生 但是沒有每次都20位 有時候會少一位 為啥會這樣... |
|
![]() |
送花文章: 77,
![]() |
![]() |
#9 (permalink) |
管理版主
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() 第一題
PHP 語法:
MSDN Library Visual Studio 也安裝上去 會對你有很大的幫助 至於解說請自己按 F8步進了解 重點在 Int((upperbound - lowerbound + 1) * Rnd + lowerbound) 這個公式 及範圍須落在 >=48 及 <=90 但不可 >57 及 <65 至於第二題 可以用 Frame 的 .Enabled 這個屬性做切換 Frame1.Enabled = False 時就會不可使用(包括放在Frame1上的物件) Frame1.Enabled = True 則相反 此帖於 2009-05-20 03:09 PM 被 mini 編輯. |
![]() |
送花文章: 2031,
![]() |
![]() |
#10 (permalink) |
長老會員
![]() |
![]() 之所以沒有出現20位數...
是因為你在網路找上的範例有問題... Rnd 本身所取得的數為 0 ~ 1之間的數值... 例如: 0.1098735 0.2729468 0.6736467 而當你把Rnd所取得的值, 乘上100000000 (1億)時, 則取得的亂數, 會是 10987353.3215734 27294681.6312982 67364675.1947425 利用Round 取整數後, 得到的值是 10987353 27294681 67364675 再利用HEX把上面的數值轉成 16進位之後, 就有可能因為數值太小, 而會發生少一位數的情況 例如: 15 對應16進位是 F (2位數 vs 1位數) 16 對應16進位是 10 (2位數 vs 2位數) 255 對應16進位是 FF (3位數 vs 2位數) 256 對應16進位是 100 (3位數 vs 3位數) 而實際取值所得到的結果... 10987353 對應16進位是 A7A759 (8位數 vs 6位數) 27294681 對應16進位是 1A07BD9 (8位數 vs 7位數) 67364675 對應16進位是 403E743 (8位數 vs 7位數) 以上例子 加起來剛好20位數, 但實際在跑亂數時,你將會遇到3個都是7位數,或3個都是6位數, 造成你跑完的結果,介於18個~21個英文數字(不可能一直都是20個英文數字的) ============================= 更慘的是,利用HEX來取英文數字, 只能取得A,B,C,D,E,F 5種英文字而已 真的是看了就不知道要怎麼改呀............... 上網找別的例子還比較快... http://zhidao.baidu.com/question/92992772.html 這是別人寫的, 參考看看吧... |
__________________![]() |
|
![]() |
送花文章: 4036,
![]() |
有 3 位會員向 cwvdavid 送花:
|
![]() |
#11 (permalink) | |
註冊會員
|
![]() 引用:
還有我用了大大提供的程式碼 發現...還是沒有20位.... |
|
![]() |
送花文章: 77,
![]() |
向 kppne0931 送花的會員:
|
![]() |
#13 (permalink) | |
註冊會員
|
![]() 引用:
還有mini大大提供的程式碼 用上去....還是沒有每次都20位 為啥會這樣... |
|
![]() |
送花文章: 77,
![]() |
向 kppne0931 送花的會員:
|
![]() |
#14 (permalink) |
長老會員
![]() |
![]() 有這麼的難嗎???
'放一個函數在程式碼內... 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 End Function '在Command1的Click裡面寫... Private Sub Command1_Click() Text3.Text = NewPassword(20) End Sub 這樣跑不出結果嗎?? |
![]() |
送花文章: 4036,
![]() |
![]() |
#15 (permalink) | |
註冊會員
|
![]() 引用:
|
|
![]() |
送花文章: 77,
![]() |
向 kppne0931 送花的會員:
|
![]() ![]() |
|
|
![]() |
||||
主題 | 主題作者 | 討論區 | 回覆 | 最後發表 |
程式 - vb6 字串轉換成網頁的字串+asp | 飛行船大大 | 程式語言討論區 | 6 | 2009-01-27 06:12 AM |
尋找VB6.0中文版 | 電腦狂 | 一般電腦疑難討論區 | 3 | 2003-10-25 01:21 PM |
找尋vb6.0的程式語言軟體... | supercoala | 一般電腦疑難討論區 | 1 | 2003-09-21 09:08 PM |
哪裡有vb6.0中文版可以下載? | newangel | 一般電腦疑難討論區 | 0 | 2003-08-31 02:02 PM |
有關VB6.0轉變點陣圖? | sammi2419 | 一般電腦疑難討論區 | 0 | 2003-08-27 12:53 AM |