我在Netbeans中構建了一個GUI - 這是一個簡單的小應用程序 - 一個轉換器程序。基本上,用戶輸入任何他們想要轉換爲文本字段的內容,從多個單選按鈕(比如lbs到kg)中選擇轉換,然後單擊「轉換」。在Netbeans中構建GUI,應該使用哪一種?
的事情是,我想要的「轉換」按鈕和單選按鈕的行爲是這樣的:
- 單選按鈕和「轉換」按鈕將被禁用程序加載時。
- 如果用戶在文本字段中鍵入一個數字(只有一個數字),單選按鈕和「轉換」按鈕將變爲可用。
- 如果使用刪除了他們鍵入的內容,則會再次禁用所有內容,直到他們鍵入另一個數字。
我已設法設置單選按鈕和「轉換」按鈕,使其被禁用,取消選中每個組件的屬性中的「啓用」框。我也已經能夠使用一個簡單的if語句和的keyTyped事件啓用/禁用如下:
private void txtUsrInputKeyTyped(java.awt.event.KeyEvent evt)
{
if (!txtUsrInput.getText().equals(""))
{
btnCalculate.setEnabled(true);
}
else
{
btnCalculate.setEnabled(false);
}
}
我想延長我的代碼,如果用戶不小心類型的字母或符號的文本字段(不要問我爲什麼要這麼做,當他們知道他們只能輸入一個數字時),程序將或者忽略他們輸入的內容,或者顯示錯誤。當然,例外是鍵入一個句點(。),因爲他們可能要指示一個十進制數。
有關我該怎麼做的任何想法?希望我寫的是有道理的!
克里斯 - 感謝您的正則表達式的信息,並感謝有關GUI創建的信息! –
沒問題。如果這個答案有幫助,請將其標記爲正確:) – christopher
好的,現在我有一個新問題!當我在Ubuntu 12.04中運行jar文件時,上面的正則表達式完美工作。但是,如果我啓動到Windows XP,並從那裏運行Jar,正則表達式不起作用!即使輸入正確的數據,我輸入的任何內容都會產生錯誤。 –