0

重複の可能性:
Java Swing を使用して TextField から画面にユーザー入力を出力する方法

以下のコードを参照してください。

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

    public class Swingtest extends JFrame implements ActionListener{
    JTextField txtdata;
    JButton calbtn = new JButton("Calculate");

    public Swingtest()
    {
        JPanel myPanel = new JPanel();
        add(myPanel);
        myPanel.setLayout(new GridLayout(3, 2));
        myPanel.add(calbtn);
        calbtn.addActionListener(this);
        txtdata = new JTextField();
        myPanel.add(txtdata);
    }

    public void actionPerformed(ActionEvent e)
    {
        if (e.getSource() == calbtn) {
            String data = txtdata.getText(); //perform your operation
            System.out.println(data);
        }
    }

    public static void main(String args[])
    {
        Swingtest g = new Swingtest();
        g.setLocation(10, 10);
        g.setSize(300, 300);
        g.setVisible(true);
    }
}

私がやりたいことは、ユーザーがフィールドに入力したテキストを同じウィンドウに表示することです。テキストが変更されたときの paint(Graphics g) と repaint() のようなものです。助けてください。ありがとう。

4

2 に答える 2

1

JLabel、JTextField、JTextArea、またはテキストを表示できるコンポーネントを追加します。ユーザーがテキストを入力する JTextField のドキュメントを取得し、このドキュメントに DocumentChangeListener を追加します。DocumentEvent を受け取るたびに、JTextField からテキストを取得し、JLabel、JTextField、JTextArea、または選択した任意のコンポーネントのテキストを更新します。

于 2012-11-01T08:30:23.850 に答える
0

これは、I/O/E ストリームをリダイレクトすることで実行できます。

私はあなたに詳細な回答を提供したでしょうが、この質問に対して選択された回答の回答者はそれをよりよく説明しています.

この質問を参照してください: How could I read Java Console Output into a String buffer

StringBuffer に読み込んだ後、JTextField または JTextArea などに出力できます。

于 2012-11-01T08:28:56.817 に答える