0
我想執行與按鈕關聯的ActionPerformed方法內的方法,但不起作用。我在很多時間進行研究,但是我無法檢測到錯誤。ActionPerformed方法不起作用
這是我的代碼:
/**
* Método que crea un nuevo usuario en el sistema
* y lo guarda en el arrayList de usuarios
*/
public static void crearUsuario()
{
JPanel panelCrearUsuario = new JPanel();
JDialog frame = new JDialog();
//label nuevo usuario
panelCrearUsuario.add(new JLabel("Nuevo Usuario: "));
//textbox nuevo usuario
JTextField jtNombreUsuario = new JTextField(15);
panelCrearUsuario.add(jtNombreUsuario);
//label DNI
panelCrearUsuario.add(new JLabel("DNI usuario: "));
//textbox DNI
JTextField jtDNIUsuario = new JTextField(15);
panelCrearUsuario.add(jtDNIUsuario);
//botón crear usuario
JButton JButtonCrearUsuario = new JButton("Crear usuario");
panelCrearUsuario.add(JButtonCrearUsuario);
frame.getContentPane().add(panelCrearUsuario);
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
frame.pack();
frame.setSize(420, 460);
frame.setModal(true);
frame.setVisible(true);
Usuario u = new Usuario();
u.setNombre(jtNombreUsuario.getText());
u.setDNI(jtDNIUsuario.getText());
JButtonCrearUsuario.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
//Debbuging the IDE doesn't enter here :(
System.out.println("blablabla");
JButtonCrearUsuarioEvento(u);
}
});
}
我這樣嘗試過:
ActionListener listener = new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("blablabla");
JButtonCrearUsuarioEvento(u);
}
};
JButtonCrearUsuario.addActionListener(listener);
東西能幫助我嗎?錯誤在哪裏? 。:( 我真的很感謝所有幫助
在此先感謝;加入一個JButton到面板,並且顯示的JDialog之前)
1)爲了更好地提供幫助,請發佈[MCVE]或[簡短,獨立,正確的示例](http://www.sscce.org/)。 2)請學習常用的Java命名規則(命名約定 - 例如'EachWordUpperCaseClass','firstWordLowerCaseMethod()','firstWordLowerCaseAttribute',除非它是'UPPER_CASE_CONSTANT')並且一致地使用它。 –
什麼不工作?你的調試器沒有進入你的actionPerformed?你沒有看到消息'blablabla'?你沒有看到屏幕上的按鈕? –