Java 修改JTextField
我对Java中的JTextField有一个问题。 它可以在Linux Ubuntu上运行,但不能在Mac Os上运行 单击JtextFieldValue时无法修改它。 这是我创建带有JText字段的弹出窗口的功能:Java 修改JTextField,java,jtextfield,Java,Jtextfield,我对Java中的JTextField有一个问题。 它可以在Linux Ubuntu上运行,但不能在Mac Os上运行 单击JtextFieldValue时无法修改它。 这是我创建带有JText字段的弹出窗口的功能: protected void createPopup(String popUpText, JPanel panelContent,JList<String> jList,JTextField jTextField,String msg){ if(popu
protected void createPopup(String popUpText, JPanel panelContent,JList<String> jList,JTextField jTextField,String msg){
if(popup!=null){
buttons.remove(this.controller.getOK_SAUVEGARDE());
popup.hide();
}
JPanel panelPopup;
if(msg!=null)
panelPopup = new JPanel(new GridLayout(3,1));
else
panelPopup = new JPanel(new GridLayout(4,1));
JLabel labelPopup = new JLabel(popUpText);
panelPopup.add(labelPopup);
if(jTextField!=null){
jTextField.setEditable(true);
textPopup = jTextField;
buttons.put(this.controller.getOK_SAUVEGARDE(), createButton(this.controller.getOK_SAUVEGARDE()));
panelPopup.add(textPopup);
panelPopup.add(buttons.get(this.controller.getOK_SAUVEGARDE()));
}else if (jList!=null){
niveauList = jList;
buttons.put(this.controller.getOK_LOAD(), createButton(this.controller.getOK_LOAD()));
panelPopup.add(niveauList);
panelPopup.add(buttons.get(this.controller.getOK_LOAD()));
}else if(msg != null){
JLabel gameOverText = new JLabel(msg);
panelPopup.add(gameOverText);
panelPopup.add(buttons.get(this.controller.getMENU_BUTTON()));
}
if(msg==null){
buttons.put(this.controller.getQUITTER_POPUP(),createButton(this.controller.getQUITTER_POPUP()));
panelPopup.add(buttons.get(this.controller.getQUITTER_POPUP()));
}
PopupFactory popupFactory = PopupFactory.getSharedInstance();
popup = popupFactory.getPopup(panelContent, panelPopup,this.controller.getMyFrame().getWidth()/2,this.controller.getMyFrame().getHeight()/4);
popup.show();
}
谢谢你的帮助。对不起,我不明白你的问题。有什么例外吗?预期的行为是什么?发生了什么事?你能把你的代码重新编译成最简单的核心吗,这样我们就可以自己编译和测试它了?嗨,谢谢你的回答。问题是我无法修改JTextField的内容。例如,我想用任何东西来更改“Nom de la sauvegarde”(不是java代码,而是当我使用我的程序时),但当我点击它时,我无法编写其他文本。在linux上它可以工作,我不知道为什么。我从来没有见过这样的事情发生…你有没有遇到异常?没有异常。。。这是个大错误
createPopup("Nom du niveau ",panelRight,null,new JTextField("Nom de la sauvegarde",14),null);