如何将一个 JFrame 的文本字段中输入的值作为其他 JFrame 的输入参数传递?
JFrame
首先通过JTextFields
..输入用户名和密码
String usr = jTextField2.getText();
String pass = jTextField3.getText();
应在第四帧中输入相同的用户名和密码,每帧在按钮单击时重定向到其他帧
如何将一个 JFrame 的文本字段中输入的值作为其他 JFrame 的输入参数传递?
JFrame
首先通过JTextFields
..输入用户名和密码
String usr = jTextField2.getText();
String pass = jTextField3.getText();
应在第四帧中输入相同的用户名和密码,每帧在按钮单击时重定向到其他帧
假设您有很多帧,您必须为此创建实例变量。如果您不知道什么是实例变量,请参阅本教程。让我们看一个例子:
这将是您发送变量的框架:
public class MainFrame {
public void actionPerformed(ActionEvent ev) {
String user = userField.getText();
String pass = passField.getText();
FrameOne frameOne = new FrameOne();
frameOne.setUser(user);
frameOne.setPass(pass);
/*
* You've passed the user and pass to other frame,
* now you can make it visible.
*/
frameOne.setVisible(true);
}
这将是你的第一帧:
public class FrameOne extends JFrame {
private JTextField userField;
private JTextField passField;
// then create setters and getter
public void setUser(String user) {this.userField.setText(user);}
public String getUser() {return this.userField.getText();}
public void setPass(String pass) {this.passField.setText(pass);}
public String getPass() {return this.passField.getText();}
public FrameOne() {
//define the components here
}
}
注意:我没有编译代码,这仅用于演示您的问题。
您也可以像这样将值传递给构造函数
你的主框架
public class MainFrame{
//
public void actionPerformed(ActionEvent ev){
FrameOne frameOne = new FrameOne(userField.getText(), passField.getText());
//you've passed the user and pass to other frame.
// then you can make it visible.
frameOne.setVisible(true);
}
}
你的下一帧
public class FrameOne extends JFrame{
private String user;
private String pass;
public FrameOne(String usr, String pas){
this.user=usr;
this.pass=pas;
//define the components here
}
}
Suppose u have two class like this:
for login.java
----------------
suppose u r calling welcome.java:
Welcome wc= new Welcome(new JFrame(), true);
after this line call a method of welcome.java which u have to create like:
wc.setUser(username);
for welcome.java
------------------
create a method:void setUser(String username) {
user1 = user;
cname.setText(user1);
}
user1 is global variable and available for all which u have to define lke:
String user1;
after it is assigning the username value to user1
here cname is a label which name is cname;
so, we are seeting the text of cname to the user.
首先创建公共静态类型变量
公共静态 JTextField txt2; 公共 JTextField txt1,button1;
//第一个JFrame中的动作按钮1
JFrame2.setVisible(true); JFrame2.txt2.setText(Me.txt1.getText());