2016-04-15 76 views
0

我有一個JTextField在Java GUI中 ,我想該值八方通是這樣的: nums.nums%設定屏蔽%的

其實我想,它的百達添加到我的雙號的百分號。

我想是這樣的:

MaskFormatter mf1 = new MaskFormatter("###.##"); 
mf1.setPlaceholderCharacter('%'); 
JFormattedTextField field = new JFormattedTextField(mf1); 

但它看起來像這樣:%%% %% ,我想 如果我寫了55其寫55%

我還試圖用

MaskFormatter mf1 = new MaskFormatter("###.##%"); 
JFormattedTextField field = new JFormattedTextField(mf1); 

以及其良好的,但其阻止我進入一個批號的這樣的問題:

45345345345.44% 

其只給我三個數字是這樣的: 123.12% 我想 有時1.44%, 22.55%, 223.55%, 45345.12% ....

TNX很多...

回答

1

這應該工作:

textfield.addFocusListener(e -> { 
    @Override 
    public void focusLost(final FocusEvent e) 
    { 
    JTextField textfield = (JTextField) e.getSource(); 
    textfield.setText(textfield.getText() + "" + "%"); 
    } 
}); 

或至少我是這麼做的。沒有嘗試過壽。