質問

nameFieldというLabelをクリックした後にlabel1というButtonに入力button1を作成しようとしています。 今、それは言っています: 'txt'と私は理由を理解しています。しかし、私は文字列を使うことができる方法がわかりません! 誰かが私が間違っていること、そしてこの文字列を正しく使う方法を説明できますか?

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);
            }
        });
        }
        }
.

役に立ちましたか?

解決

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

例:

label1.setText(nameField.getText()); 
.

他のヒント

アクションで実行されたメソッド、呼び出し:

label1.setText(nameField.getText());
.

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

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

NameFieldのDocumentListenerを設定します。NameFieldが更新されたら、ラベルを更新します。

http://download.oracle。COM / javase / 1.5.0 / docs / api / javax / swing / jtextfield.html

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top