0

我在一帧中有一个名为 uname 的字符串。

uname = usrNameTxt.getText();
char[] pword = pwordTxt.getPassword();
String password = new String(pword);

并将其指向下一帧

 this.dispose();
 new SectionsFclty(uname).setVisible(true);

在我的另一个(如下所示)框架中想要字符串 unname ...

  public SectionsFclty() {
    initComponents();   
}

 public SectionsFclty(String uname) {
    initComponents();
    jLabelUsername.setText(uname);
}

但是在我的第二帧(SectionsFclty.java)中出现错误

  private void initComponents() {

    jPanel1 = new javax.swing.JPanel();
    jButton1 = new javax.swing.JButton();
    jButton2 = new javax.swing.JButton();
    jLabel1 = new javax.swing.JLabel();
    jLabelUsername = new javax.swing.JLabel();..............

 }  // shows an error now

跟随错误

  error: illegal start of expression
private void initComponents() {
            new SectionsFclty().setVisible(true);

必需:找到字符串:无参数 原因:实际参数列表和形式参数列表的长度不同 注意:某些输入文件使用未经检查或不安全的操作。注意:使用 -Xlint:unchecked 重新编译以获取详细信息。

4

1 回答 1

0

您需要使用String参数调用构造函数。

SectionsFclty fclt = new SectionsFclty(uname);
fclt.setVisible(true);

使用两行并不是严格的要求,但它有助于查看错误发生的位置。链接可以很方便并使代码更短,但至少只要你是初学者,尽量保持简单。

我不建议制作uname静态。静态通常不需要,并且往往会导致比它解决的问题更多的问题。

于 2013-07-28T18:54:18.217 回答