JAVA语言在窗体中动态添加按钮组件并重绘jpanel面板

有时候我们会用到动态添加组件的情况。可以根据人们需要的组件以及组件个数来动态添加。

尝试了多次,在此记录一下,如果有什么不对或者更好的方案,还请大家赐教。

代码如下:

import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

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

public class Test4 extends JFrame{
	JTextField text;		// 文本框(要输入单行文本的区域)
	JPanel panel1,panel2;	// 两个面板,panel1是窗体北部的面板,窗体其他部分为panel2面板
	
	JButton button;	// 一个按钮,当按下此按钮时,响应MyEvent事件
	
	public Test4(){
		this.setBounds(300,200,400,300);	// 设置窗体大小
		this.setLayout(new BorderLayout());	// 设置窗体的布局方式
				
		text = new JTextField(15);		// 新建文本框
		button = new JButton("添加");	// 新建按钮
		
		// 新建面板
		panel1 = new JPanel();
		panel2 = new JPanel();
			
		// 在panel1中添加text文本框和button按钮
		panel1.add(text);
		panel1.add(button);
		
		// 在窗体中添加pane
  • 5
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
可以使用CardLayout类来实现在一个窗体添加多个面板进行切换。 首先需要创建一个JFrame窗体对象和多个JPanel面板对象,然后将这些面板添加到JFrame窗体。接着使用CardLayout类来管理这些面板的切换。 示例代码如下: ```java import java.awt.CardLayout; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JButton; public class SwitchPanels { private static JPanel mainPanel; private static CardLayout cardLayout; public static void main(String[] args) { // 创建JFrame窗体对象和多个JPanel面板对象 JFrame frame = new JFrame("Switch Panels"); JPanel panel1 = new JPanel(); JPanel panel2 = new JPanel(); JPanel panel3 = new JPanel(); // 添加按钮面板 panel1.add(new JButton("Panel 1")); panel2.add(new JButton("Panel 2")); panel3.add(new JButton("Panel 3")); // 创建主面板并设置CardLayout布局 mainPanel = new JPanel(); cardLayout = new CardLayout(); mainPanel.setLayout(cardLayout); // 将面板添加到主面板 mainPanel.add(panel1, "panel1"); mainPanel.add(panel2, "panel2"); mainPanel.add(panel3, "panel3"); // 将主面板添加窗体 frame.add(mainPanel); // 设置窗体属性并显示 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(400, 300); frame.setVisible(true); } } ``` 在上面的代码,我们创建了三个面板,分别添加了一个按钮。然后创建了一个主面板,并将这三个面板添加到主面板,使用CardLayout来管理这些面板的切换。最后将主面板添加窗体,并设置窗体的属性并显示。 在实际使用,可以通过按钮的事件来控制面板的切换。例如,可以为每个按钮添加ActionListener监听器,在监听器使用cardLayout.show()方法来切换面板
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值