2015-05-13 105 views
0

有人可以告訴我如何從jSpinner獲得確切的值? 這裏是我的JSpinner是如何出現時,用戶將選擇時間: enter image description here獲取確切的jSpinner值

然而

,當我通過JSpinner的價值看起來像這樣文本框:enter image description here

這裏是我的代碼:

timeout1 = spnrTOH1.getValue()+":"+spnrTOM1.getValue()+" "+spnrTOA1.getValue(); 

這裏是我的jSpinner型號: enter image description here

任何幫助將不勝感激。提前致謝! 對不起,如果我的問題似乎很愚蠢。新手在這裏。 :)

+0

我檢查了代碼。工作很好..最新問題?在哪個事件上你想在文本框中顯示它。 – ELITE

+0

Hi @NiRRaNjANRauT,我想要01:00 AM而不是1:0 AM。我想在提交按鈕被觸發時顯示在文本框中。謝謝 – nhix

+0

什麼'模型'你設置爲'JSpinner' ...意味着'DefaultModel'或其他... – ELITE

回答

1

添加這個功能,你的程序..

public String getString(Object object) { 
    int number = Integer.parseInt(object.toString().trim()); 
    if(number < 10) { 
     return "0" + number; 
    } 
    return String.valueOf(number); 
} 

,並調用這個時候你必須設置像

價值的文本字段
timeout1 = getString(spnrTOH1.getValue())+":"+getString(spnrTOM1.getValue())+" "+spnrTOA1.getValue(); 
+0

'String#format' ...... – Antoniossss

+0

我會盡力的。謝謝。 :) – nhix

+0

嗨@NiRRaNjAN RauT,它的工作。非常感謝你。 :) – nhix

2

它與紡紗機及其模型無關。

你需要格式化你的字符串以得到前導零。由於spiner的渲染器格式化過程,精確值爲0時,微調器顯示00。 Renderer是一個組件,負責在模型的GUI值上顯示。例如。自定義渲染器可以將整數顯示爲羅馬數字。

要格式化輸出只需使用String#format方式類似:

timeout1 = String.format("%02d:%02d %s",spnrTOH1.getValue(),spnrTOM1.getValue(),spnrTOA1.getValue()); 

這樣,您將顯示整數值爲2位數號碼與領先的0

+0

嗨謝謝你的回答。但第一個答案適用於我。我感謝您的幫助。十分感謝! :) – nhix