JFormattedTextField 在设计视图中消失

JFormattedTextField disappear in Design View

所以我正在处理 JFrame,并创建了一些 JFormattedTextFields。一开始,每次我在设计视图和 "Source" 之间切换时,组件都停留在设计视图中。但是突然间,每次我切换到设计模式时,文本字段都会消失,但是当我执行程序时,它们会显示出来。可能是什么原因造成的?

这是我添加文本字段的面板:

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;
}

如果您使用的是 netbeans :

检查您要添加 JFormattedTextFields 的面板的布局,然后转到导航器面板以select您的字段再次启用它。

输入代码:

    MaskFormatter mf = createMinWeightMask();

在 if 语句中。应该可以。