6

呼び出されたものがクリックされた後、入力が呼び出されたときnameFieldに表示されるようにしようとしています。現在、「txt」と表示されていますが、その理由は理解できます。でも紐の使い方がわからない!私が間違っていることと、この文字列を適切に使用する方法を誰かに説明してもらえますか?Labellabel1Buttonbutton1

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class thisismytest2 {
    public static void main(String[] args) {

        final JFrame frame = new JFrame();  
        JPanel panel = new JPanel();    
        JTextField nameField = new JTextField("...", 2);    
        JButton button1 = new JButton();
        final JLabel label1 = new JLabel();
        label1.setText("txt");
        label1.setVisible(false);
        String txt = nameField.getText();

        frame.add(panel);
        panel.add(button1);
        panel.add(label1);
        frame.setSize(200,200);
        frame.setVisible(true);
        panel.add(nameField);
        frame.setSize(600,400); 
        nameField.setBounds(400, 40, 400, 30);

        button1.addActionListener(new ActionListener() {

            public void actionPerformed(ActionEvent arg0) {

                label1.setVisible(true);
            }
        });
        }
        }
4

4 に答える 4

7

ボタンをクリックする前のラベルテキストを「txt」に設定しています。代わりに、ボタンがクリックsetText()されたときにラベルを呼び出し、テキスト フィールドからテキストを渡します。

例:

label1.setText(nameField.getText()); 
于 2011-03-29T18:36:39.430 に答える
4

アクション実行メソッドで、次を呼び出します。

label1.setText(nameField.getText());

このように、ボタンがクリックされると、ラベルはnameFieldテキストに更新されます。

于 2011-03-29T18:39:52.127 に答える
2

getTextメソッドは文字列を返しますが、は文字列を受け取るので、リスナーのsetTextように書くことができます。label1.setText(nameField.getText());

于 2011-03-29T18:40:22.450 に答える
0

nameField に DocumentListener をセットアップします。nameField が更新されたら、ラベルを更新します。

http://download.oracle.com/javase/1.5.0/docs/api/javax/swing/JTextField.html

于 2011-03-29T18:43:09.617 に答える