2017-03-25 34 views
0

enter image description here的JFormattedTextField消失在設計視圖

所以我工作的一個JFrame,我創造了一些JFormattedTextFields。每次我在Desing View和「Source」之間切換時,組件都停留在Design View中。但突然每次我切換到設計模式時,文本框都消失了,但是當我執行程序時,它們顯示出來了。這可能是什麼原因?

這裏是我的面板,我添加文本框:

private JPanel getPanel_2() { 
    if (panelFishData == null) { 
     panelFishData = new JPanel(); 
     panelFishData.setBounds(161, 23, 253, 264); 
     panelFishData.setLayout(new GridLayout(4, 2, 0, 0)); 
     panelFishData.add(getLblName()); 
     panelFishData.add(getFormatedTextFieldNameFish()); 
     panelFishData.add(getLblMinWeight()); 
     panelFishData.add(getFormattedTextFieldMinWeight()); 
     panelFishData.add(getLblMaxWeight()); 
     panelFishData.add(getFormattedTextFieldMaxWeight()); 
     panelFishData.add(getLblstOccurence()); 
     panelFishData.add(getFormattedTextFieldFirstOccurence()); 
    } 
    return panelFishData; 
} 

這裏是我的JFormattedTextFields之一:

private JFormattedTextField getFormattedTextFieldMinWeight() { 
    MaskFormatter mf = createMinWeightMask(); 

    if (formattedTextFieldMinWeight == null) { 
     formattedTextFieldMinWeight = new JFormattedTextField(mf); 
    } 
    return formattedTextFieldMinWeight; 
} 

private MaskFormatter createMinWeightMask() { 
    MaskFormatter mf; 
    try{ 
     mf = new MaskFormatter("### g"); 
    } 
    catch(Exception ex){ 
     mf=null; 
    } 
    return mf; 
} 

回答

0

把代碼:

MaskFormatter mf = createMinWeightMask(); 

if語句。它應該工作。

0

如果您使用的是NetBeans:

檢查的佈局面板上添加JFormattedTextFields,並轉到導航面板選擇你的領域再次啓用相同。