单击按钮后如何添加按钮

时间:2014-10-28 18:39:13

标签: java jframe jpanel jlabel

好吧,我真的很新,我可能只是在做一些愚蠢的事情,但这就是我输入的内容,我只是想知道为什么一旦我按下按钮J标签AL,BL,CL和文本字段A ,B,C不会出现,但是已经点击了" pythag"仍然输入。 (它在if循环之外工作,但我不知道如何使它在if循环中工作)



import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Scanner;

import javax.swing.*;
import javax.swing.JFrame;
import javax.swing.JMenuBar;
import javax.swing.JTextField;

public class JFrameStuff extends JFrame implements ActionListener {

	private static final long serialVersionUID = 1L;

	public static void main(String[] args) {
		new JFrameStuff().setVisible(true);
		
	}

	public  JFrameStuff() {
		super("Math");
		setSize(400, 300);
		setResizable(false);
		setDefaultCloseOperation(EXIT_ON_CLOSE);
		setLayout(new FlowLayout());

		
		JButton bton1 = new JButton("Pythagorean Math");// 1

		JPanel pythag = new JPanel();

		bton1.addActionListener(this);
		add(bton1);
		add(pythag);


	

	}

	@Override
	public void actionPerformed(ActionEvent e) {
		String name = e.getActionCommand();

		if (name.equals("Pythagorean Math")) {
			System.out.println("pythag has been clicked");
			JLabel AL = new JLabel("A");
			JLabel BL = new JLabel("B");
			JLabel CL = new JLabel("C");
			
			JTextField A = new JTextField(200);
			JTextField B = new JTextField(200);
			JTextField C = new JTextField(200);
			 add(AL);
			 add(A);
			 add(BL);
			 add(B);
			 add(CL);
			 add(C);
          }
	}
}




1 个答案:

答案 0 :(得分:1)

您必须刷新视图。使用validate();添加组件后。