submitButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // 处理添加管理员用户信息事件 String name = nameField.getText(); String password = new String(passwordField.getPassword()); if (name.trim().isEmpty()) { // 判断用户名是否为空 JOptionPane.showMessageDialog(null, "请输入用户名"); return; } try { // 将用户信息添加到数据库 String sql = "INSERT INTO 管理员信息表 (用户, 密码) VALUES (?, ?)"; PreparedStatement ps = conn.prepareStatement(sql,1004,1007); ps.setString(1, name); ps.setString(2, password); ps.executeUpdate(); JOptionPane.showMessageDialog(null, "添加成功"); } catch (SQLException ex) { ex.printStackTrace(); JOptionPane.showMessageDialog(null, "添加失败"); } } });无法获取输入框文本始终提示输入用户名
时间: 2024-02-10 21:23:01 浏览: 52
根据你提供的代码,可能的问题是没有正确获取输入框的文本。你可以检查以下几点:
1. 确认nameField是正确的文本输入框。
2. 确认在addActionListener方法之前,nameField已经被正确初始化。
3. 确认没有其他地方对nameField的值进行了修改。
如果以上都没有问题,可以尝试在获取文本之前打印一下nameField.getText()的值,看看是否为空。如果还是无法解决问题,请提供更多代码片段或上下文信息,以便更好地帮助你。
相关问题
label = new JLabel("点击开始开始游戏"); textField = new JTextField(10); startButton = new JButton("开始"); submitButton = new JButton("提交"); submitButton.setEnabled(false); startButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { startGame(); } }); submitButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { checkAnswer(); } }); JPanel panel = new JPanel(); panel.add(label); panel.add(textField); panel.add(submitButton); panel.add(startButton); add(panel); 这段代码相关知识点讲解
这段代码是一个基于Java Swing的简单GUI程序,它创建了一个JLabel,一个JTextField,两个JButton,并将它们添加到JPanel中,最后将面板添加到主窗口中。
JLabel用于显示文本,JTextField用于接受用户输入,JButton用于触发事件。在这个程序中,一个JButton被用来开始游戏,另一个JButton被用来提交用户的答案。
startButton和submitButton都添加了ActionListener,当用户点击按钮时,对应的ActionListener会被触发执行。startButton的ActionListener调用了startGame()方法,而submitButton的ActionListener调用了checkAnswer()方法。
面板被用来组织这些组件,并且使用了FlowLayout布局管理器。最后,面板被添加到主窗口中以显示GUI。
import java.awt.Button; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class Dialog { private String icon; private String title; private String message; private Button submit; private Button cancel; private Button close; private Dialog(){ } private Dialog(String icon, String title, String message, Button submit, Button cancel, Button close) { this.icon = icon; this.title = title; this.message = message; this.submit = submit; this.cancel = cancel; this.close = close; this.submit = new Button(); // 初始化submit按钮 this.cancel = new Button(); // 初始化cancel按钮 this.close = new Button(); // 初始化close按钮 } public void show(){ //弹出 } public void dismiss(){ //关闭 } static class Builder{ private Dialog dialog = new Dialog(); public Builder title(String title){ dialog.setTitle(title); return this; } public Builder icon(String icon){ dialog.setIcon(icon); return this; } public Builder message(String message){ dialog.setMessage(message); return this; } public Dialog build(){ return dialog; } } public void setSubmitText(String text){ submit.setLabel(text); } public void setCancelText(String text){ cancel.setLabel(text); } public void setCloseText(String text){ close.setLabel(text); } /** * 回调函数 * @param callback */ public void addListenerOnSubmit(SubmitCallBackListener callback){ submit.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { //当用户对按钮执行了动作操作以后, //程序会到此处执行 callback.submitCallback(e); } }); } public String getIcon() { return icon; } public void setIcon(String icon) { this.icon = icon; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } }这段代码怎么在myeclipse中运行出对话框
这段代码只是定义了一个 Dialog 类,它包含了对话框的基本属性和方法,但并没有实现对话框的显示和交互逻辑。你需要在这个类的 show() 方法中添加对话框的显示逻辑,可以使用 Java 的 GUI 库(如 Swing 或 JavaFX)来创建对话框的 UI,并在 submit、cancel、close 按钮的点击事件中添加对应的交互逻辑。具体实现方式可以参考 Java GUI 相关的教程和示例代码。