相关疑难解决方法(0)

如何通过单击JButton添加JPanel?

我正在尝试创建一个小的GUI,它有2个JButton和2个JPanel,每个都有一些绘图动画.默认情况下,它必须显示第一个JPanel,并通过单击第二个JButton我想看到我的第二个JPanel.所以:我创建了JFrame,Panel1和Panel2,在那里我绘制了我的动画,创建了Button1和Button2并添加了ActionListeners.我还有MainPanel,它有一个字段变量i.通过更改此"i"我的构造函数将MainPanel添加到Panel1(默认)或Panel2(通过单击JButton2我更改i).比我把这个MainPanel添加到我的框架.所以我的问题:在类MainPanel中我有refreshMe方法,我应该在那里写什么才能使我的GUI正常工作?谢谢.这是我的代码:

import java.awt.Color;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class GuiTest {

    public static void main(String[] args) {
        JFrame f = new JFrame();
        MainPanel myPanel = new MainPanel();
        f.add(myPanel);
        Button1 button1 = new Button1();
        Button2 button2 = new Button2();
        myPanel.add(button1);
        myPanel.add(button2);
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.pack();
        f.setVisible(true);
    }
}

class MainPanel extends JPanel {
    Panel1 p1 = new Panel1();
    Panel2 p2 = new Panel2();
    public int i = 1;  //this is being changed later by clicking …
Run Code Online (Sandbox Code Playgroud)

java swing jpanel jbutton actionlistener

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

actionlistener ×1

java ×1

jbutton ×1

jpanel ×1

swing ×1