Java常用Swing组件的使用

目的:
1、理解容器和组件的思想,掌握Swing开发图像用户界面程序的方法;
2、理解布局的概念及掌握几种布局管理器特点和用法;
3、理解Java的消息处理机制,掌握消息处理方法。
题目:
编写一个窗体应用程序,实现以下功能:
a) 窗口布局为BorderLayout;在窗口的北侧区域包含有一个文本框和一个按钮,南侧含一个下拉列表框,窗口中间区域有一个文本区。
b) 用户在文本框中输入一个数值并回车,或者点击按钮时,将文本框内的数值显示在文本区中;当用户输入“clear”的时候,清空文本区的全部内容。
c) 下拉列表框里内容自己定义,当进行下拉选择时,同样将列表框中的内容显示在文本区中

import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.*;
import javax.swing.border.TitledBorder;
public class Container extends JFrame implements ActionListener,ItemListener {
	JTextField tfield; // 输入
	JLabel lab1; 
	JButton button; // 确定按钮
	JTextArea tarea;
	JComboBox<String>comBox;
	private JPanel panel1;
	private JLabel lab2; // 下方操作提示语
	private JPanel panel2;
	private String str;
	private int n = 0;
	private JPanel panel3;
	public Container() {
		init();
		setVisible(true);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
	void init() {
		tfield = new JTextField(10);
		lab1 = new JLabel("请输入");
		button = new JButton("确认");
		tarea = new JTextArea(40,40);
		comBox = new JComboBox<String>();
		panel1 = new JPanel();
		panel1.add(lab1);
		panel1.add(tfield);
		panel1.add(button);
		add(panel1,BorderLayout.NORTH); // 放在布局北侧
		lab2 = new JLabel("请选择");
		panel2 = new JPanel();
		panel2.add(lab2);
		comBox.addItem("喜羊羊");
		comBox.addItem("灰太狼");
		panel2.add(comBox);
		add(panel2,BorderLayout.SOUTH); // 放在布局南侧
		panel3 = new JPanel();
		panel3.add(tarea);
		add(panel3,BorderLayout.CENTER); //放在布局中央
		button.addActionListener(this);
		tfield.addActionListener(this);
		comBox.addItemListener(this);
	}
	public void actionPerformed(ActionEvent e) {
		String text=tfield.getText();
		if(text.equals("clear")) {
		tarea.setText(null);
		}
		else tarea.setText(text);
	}
	public void itemStateChanged(ItemEvent e) {
		tarea.setText(comBox.getSelectedItem().toString());
	}
}
//main方法
public class Containerplay {
	public static void main(String[] args) {
		Container win = new Container();
		win.setBounds(300, 200, 600, 360); // 设置窗体大小
		win.setTitle("喜羊羊与灰太狼");
	}
}

程序截图:
在这里插入图片描述

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值