我有两个JFrame login.java
和account.java
我需要从username
页面获取login.java
并将其放入account.java
JFrame
中的变量中。如何使用Swing在Java NetBeans中执行此操作?
答案 0 :(得分:3)
您可以使用getter和setter方法......
在setter中设置用户名。并使用login.java的对象在account.java中通过getter ...
使用它public class login {
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = this.usernameTextField.getText();
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = this.passwordTextField.getText();
}
}
使用login.java中的对象访问account.java中的getPassword()
,getUsername()
。
你需要首先将login.java的对象传递给account.java ...
答案 1 :(得分:3)
您可以使用CardLayout代替使用JFrame在不同表单之间传递值,而CardLayout将保留您在上一个表单中输入的数据。 您所要做的就是创建一个JFrameForm并向其添加面板。
答案 2 :(得分:1)
因为您已经询问如何将变量值从一个JFrame传递到另一个JFrame(使用swing)。所以为此,在login.java中放置一个文本框(tx)和一个按钮(jButton3),在account.java中放置一个标签(lx),我们将从login.java中打印文本框的值。
在login.java中输入: -
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
String msg= tx.getText();
new NewJFrame2(msg).setVisible(true);
}
然后在account.java中重载构造函数: -
public NewJFrame2(String abc ){
initComponents();
lx.setText(abc);
}
答案 3 :(得分:0)
你有很好的方法去做。
定义该类的新静态最终对象。 并将该值保存到Object中。
并且在其他类中,您可以轻松地使用该对象以及该值。 使用
CLASSNAME.OBJECT VALUE。
使用它。
答案 4 :(得分:-1)
100%可行的解决方案。假设您正在调用welcome.java
Account ac= new Account(new JFrame(), true);
在这行之后调用welcome.java的方法,你必须创建像:
wc.setUser(username);
对于account.java
create a method:void setUser(String username) {
user1 = user;
cname.setText(user1);
}
User1是全局变量,可供所有人使用lke:
String user1;
将用户名值分配给user1之后。这里cname是一个名称为cname的标签;所以,我们将cname的文本发送给用户。