1

私は小さなアプリケーションを作成しましたが、簡単なことだと思うものの助けが必要ですが、それでスタック ATM になっています。JFrames には 2 つのクラスがあります。1つはログインで、もう1つは何かを行うGUIとプログラムです。ログインはデータベースに接続されており、ユーザー名であるtextFieldから値を取得するにはどうすればよいですか。検証に合格すると、USERのような他のGUIクラスに表示されます:(最初に名前を付けるログインフレームに書きました)。

たとえば、 set get メソッドを試して、その文字列に値を追加しました

String s = textField.getText().toString();

しかし、GUI で get メソッドを呼び出すと何も起こりません。

4

3 に答える 3

1

これを試してデータを渡します:

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

class PassData extends JFrame
{
    JTextField text;
    PassData(){
        JLabel l=new JLabel("Name: ");
        text=new JTextField(20);
        JButton b=new JButton("Send");
        setLayout(null);
        l.setBounds(10,10,100,20);
        text.setBounds(120,10,150,20);
        b.setBounds(120,40,80,20);
        add(l);
        add(text);
        add(b);
        setVisible(true);
        setSize(300,100);
          b.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e){
            String value=text.getText();
            NextPage page=new NextPage(value);
            page.setVisible(true);
            }
        });
    }
        public static void main(String[] args) 
    {
        new PassData();
    }
}

次のページでこのコードを試してください:

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

class NextPage extends JFrame
{
  NextPage(String st)
   {
     setLayout(null);
     setDefaultCloseOperation(javax.swing. WindowConstants.DISPOSE_ON_CLOSE);
     setTitle("Welcome");
     JLabel lab=new JLabel("Welcome  "+st);
     lab.setBounds(10,10,500,20);
     add(lab);
     setSize(300, 100);
      }
 }
于 2013-06-09T09:27:17.560 に答える
0

ログインすると別の画面に移動すると思います。その場合、 の値textFieldは空です。だから、textField.getText()空になります。検証のためにログイン画面からのテキストを既に読んでいます。それで、なぜそれをもう一度読んでください。それを次の GUI に渡し、必要に応じてレンダリングするだけです。

于 2013-06-09T07:14:46.857 に答える
0

GUI の 2 つのクラスを相互に拡張/継承します。たとえば

class A 
{
  private username;
  private password;

public void A(username,password)
{

}
}

class B extends A
{
  private A(username,password);

public setA(username,password){}

public void verify()
{
  // send this response to GUI   
}

}

textField.getText() で textfield から値を取得し、onclick ボタンでクラス A からクラス B に値を渡し、classB を使用して 2 番目の GUI を介して出力を確認および表示できます。

于 2013-06-09T09:11:54.010 に答える