gpt4 book ai didi

java - 从另一个类访问 JTextfield 中的值

转载 作者:太空宇宙 更新时间:2023-11-04 08:29:19 24 4
gpt4 key购买 nike

有人可以检查我的代码是否有问题,因为当我调用 getter 方法时它什么也不显示。不知何故,它不存储我尝试使用的文本字段的输入。

<小时/>

以下是一些代码:

A 类登录按钮

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
System.out.println("1"+getuser());
try {

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/devweb", "root", "123456");
PreparedStatement statement = con.prepareStatement("select User,pwd from account");
ResultSet rs = statement.executeQuery();
name = user.getText();
String pwd = jTextField2.getText();

while (rs.next()) {
if (rs.getString("User").equals(name) && rs.getString("pwd").equals(pwd)) {
result now = new result();
now.res();
dispose();
System.out.println("2"+getuser());
}
}
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
<小时/>

然后这是 B 类的 View 按钮:

private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {                                         
log qwe=new log();
jTextField1.setText(qwe.getuser());
System.out.println(qwe.getuser());//when I print this it just says null
}

注意:此时我只想看看它是否能够从登录页面获取输入,这就是为什么我的代码所做的只是打印输入的用户名。

最佳答案

是的,有问题:您使用了静态。 Getter 方法应该是实例方法,因此不应该涉及静态。

我经常在此类代码中看到的另一个问题是何时您尝试提取文本?它是事件驱动的并且仅在将文本添加到 JTextField 之后才调用吗?或者,当用户还没有机会输入文本时,您是否尝试在程序启动时调用此方法?很难说这是否会影响您,因为我们对您的代码和问题的了解有限。

另一个并不罕见的问题是尝试从阴影对象而不是当前显示的实际对象中提取信息。您的第二个代码窗口表明这可能是一个问题,因为您在尝试从中提取信息之前立即创建了一个日志对象。这可能是第二个日志对象,根本无法显示。

要了解这些问题是否对您产生影响,或者您是否需要更多或更深入的建议,您可能希望显示更多代码。

编辑2
关于您最近的编辑,如果日志是模式对话框,您的代码可以工作,但仍然很难说,因为您添加的代码为我们提供了一些信息,但仍然不够。不要灰心,因为有一种艺术可以决定在这里发布的信息/代码不足、信息足够、信息过多。通过练习,你会在这方面做得更好。

关于java - 从另一个类访问 JTextfield 中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7844311/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com