查看單個文章
舊 2008-12-07, 04:47 AM   #4 (permalink)
getter
管理員
 
getter 的頭像
榮譽勳章
UID - 6433
在線等級: 級別:96 | 在線時長:9733小時 | 升級還需:64小時級別:96 | 在線時長:9733小時 | 升級還需:64小時級別:96 | 在線時長:9733小時 | 升級還需:64小時級別:96 | 在線時長:9733小時 | 升級還需:64小時級別:96 | 在線時長:9733小時 | 升級還需:64小時級別:96 | 在線時長:9733小時 | 升級還需:64小時
註冊日期: 2002-12-08
住址: 天線星球
文章: 8157
精華: 0
現金: 19955 金幣
資產: 765391 金幣
預設

引用:
作者: Living 查看文章
你的問題是你並沒有在輸入密碼的過程中加入"取消"這個選項
也就是你每一個IF STATEMENT裡應該加上一個ELSEIF
而ELSEIF是如果按的是"取消鍵"該做什麼
真是厲害,看到樓主的忽略地方了 ...,我在改以一下我的概念碼(虛擬碼)

語法:
Boolean 密碼檢查值 = False;
Boolean 取消鍵值 = False;
String 密碼A = ABCDEF;

For (i=1 ~ 3) {
密碼檢查值 = 密碼程式();
If (取消鍵值 == True) Then {顯示密碼輸入取消並結束 For 迴圈();}
If (密碼檢查值 == True) Then {結束 For 迴圈();} Else {顯示密碼錯誤();}
}

If (密碼檢查值 == True) Then {做該做的事();}
---------------------------------------------------
密碼程式(){
String 密碼B;
密碼B = 輸入字串();
取消鍵值 = 檢查有取消鍵(ESC);
If (取消鍵值 == True) Then {Return False;}
If (密碼A == 密碼B) Then {Return True;} Else {Return False;}
}
或者

語法:
Integer 密碼檢查值 = 0; //0 表示密碼錯誤、1 表示密碼正確、2 表示密碼取消   
String 密碼A = ABCDEF;

For (i=1 ~ 3) {
密碼檢查值 = 密碼程式();
If (密碼檢查值 == 2) Then {顯示密碼輸入取消並結束 For 迴圈();}
If (密碼檢查值 == 1) Then {結束 For 迴圈();} Else {顯示密碼錯誤();}
}

If (密碼檢查值 == 1) Then {做該做的事();}
---------------------------------------------------
密碼程式(){
String 密碼B;
密碼B = 輸入字串();
If (檢查有取消鍵 (ESC)) Then {Return 2;}
If (密碼A == 密碼B) Then {Return 1;} 
Return 0;
}

此帖於 2008-12-07 05:04 AM 被 getter 編輯.
__________________
在「專業主討論區」中的問題解決後,要記得按一下 http://forum.slime.com.tw/images/stamps/is_solved.gif 按鈕喔,
這是一種禮貌動作。

一樣是在「專業主討論區」中發問,不管問題解決與否,都要回應別人的回答文喔。
不然搞 [斷頭文],只看不回應,下次被別人列入黑名單就不要怪人喔。

天線寶寶說再見啦~ ... 天線寶寶說再見啦~

迪西:「再見~ 再見~」

Otaku Culture Party 關心您 ...
getter 目前離線  
送花文章: 37855, 收花文章: 6441 篇, 收花: 26052 次
回覆時引用此帖
向 getter 送花的會員:
magicwoo (2008-12-07)
感謝您發表一篇好文章