我有两个JFrames login.java
和 account.java
。
我需要从login.java
页面获取username
,并将其放入account.java
的变量中。在Java NetBeans使用Swing,该如何实现?
使用 CardLayout 替代 JFrames 在不同表单之间传递值,这样可以使您输入的数据在前一个表单中持久化。 您只需要创建一个 JFrameForm 并向其添加面板即可。
您可以使用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 中...
JPasswordField
的方法getPassword()
返回字符数组,所以最好保持原样而不是将其更改为String
。它被设计成这样是有目的的 :-) - nIcE cOw由于您询问了如何在一个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);
}
public NewJFrame2(String abc ){
initComponents();
lx.setText(abc);
}
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是全局变量,可供所有人使用,您需要像这样定义:
String user1;
在将用户名值分配给user1之后。这里的cname是一个名为cname的标签;因此,我们将cname的文本设置为用户。
你有非常好的方法去实现它。
定义该类的新静态最终对象。并将该值保存到对象中。
在其他类中,您可以轻松地使用这些对象和相应的值。 通过使用
CLASSNAME.OBJECT VALUE.
来使用它。
PasswordDemo
是一个很好的例子,它使用对话框而不是第二个窗口来实现。 - trashgod