与 Java 相关并使用 NetBeans 7,我有以下课程......
public class StaffLogin2 extends JDialog{
JPasswordField pf = new JPasswordField();
public static String username(){
String staffName=JOptionPane.showInputDialog("Enter Username:");
return staffName;
}
...它向用户请求用户名(以及后来以类似方式输入的密码)。然后将结果传递回我的主代码 (TillScreen.java),这是一个 JForm,它与密码一起用于进入我的 till 系统。从 StaffLogin2 类获取这些凭据的代码如下...
//imports, constructor etc.
//loads of private voids up here for buttons, actions etc
public static void main(String args[]){
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
StaffLogin2 validate=new StaffLogin2();//Initialises staff log in
String user=validate.username();
String pass=validate.password();
//Some other code here to validate credentials...
if(pass.equals(pWd)){
new TillScreen().setVisible(true);//Kickstarts the main form...
}
else{
JOptionPane.showMessageDialog(null,"Invalid username...");
//Main form fails to load, program ends
}
}
///and some other guff
}
}
//TextFields and other form items declared here....
但是,我希望能够在许多其他地方使用提供的用户名,例如显示在文本字段中,然后打印在收据上。问题是,当我使用...引用它时
String somevar=StaffLogin2.username();
...提示用户重新输入他们的信息。我希望能够从课堂上获得这个用户名,而不必重新提出这个问题,因为这个用户名需要在很多地方使用。一旦用于登录目的,有什么方法可以存储此用户名?
很抱歉这个冗长的问题无疑有一个简单的答案,或者一个响亮的“不!”。我有一个很好的老根,但到目前为止还没有找到任何答案。我想我可能遗漏了一些明显的东西,所以提前感谢您的任何答案,我现在会回避以避免肯定会出现的影响力。干杯伙计们:)