博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Frame-Pannel-Button综合
阅读量:3959 次
发布时间:2019-05-24

本文共 5402 字,大约阅读时间需要 18 分钟。

1、Frame已经介绍过,不懂可以参考

2、Pannel:用在Frame中的,类似一种面板放在Frame框架中,使用时需要配合Frame
因为生成的Frame框不能X掉,写下面这个就可以把生成的界面X掉,不至于强行停止程序

frame.addWindowListener(new WindowAdapter() {
@Override public void windowClosing(WindowEvent e) {
System.exit(0); } });
package 狂神说__AWT;import java.awt.*;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;//面板public class TestPannel {
public static void main(String[] args) {
Frame frame=new Frame(); Panel panel=new Panel(); frame.setLayout(null); //框架的坐标大小颜色 frame.setBounds(300,300,400,400); frame.setBackground(new Color(133, 240, 192)); //在frame框架中设置面板 panel.setBounds(100,100,100,100); panel.setBackground(new Color(255, 18, 30)); //框架中加入面板 frame.add(panel); frame.setVisible(true); frame.addWindowListener(new WindowAdapter() {
@Override public void windowClosing(WindowEvent e) {
System.exit(0); } }); }}

在这里插入图片描述3、Button按钮有三种类型:

(1)FlowLayout 流式布局,指定按钮在左边、右边或者中间

package 狂神说__AWT;import java.awt.*;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;//Layout布局public class TestFlowLayout {
public static void main(String[] args) {
Frame frame = new Frame(); frame.setVisible(true); frame.setBounds(200,200,400,400); //按钮 Button button1 = new Button("button1"); Button button2 = new Button("button2"); Button button3 = new Button("button3"); frame.add(button1); frame.add(button2); frame.add(button3); //流式布局 //frame.setLayout(new FlowLayout()); //中心 //frame.setLayout(new FlowLayout(FlowLayout.LEFT)); //左边 frame.setLayout(new FlowLayout(FlowLayout.RIGHT)); //左边 frame.addWindowListener(new WindowAdapter() {
@Override public void windowClosing(WindowEvent e) {
System.exit(0); } }); }}

在这里插入图片描述(2)BorderLayout 东西南北布局

package 狂神说__AWT;import java.awt.*;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;public class TestBorderLayout {
public static void main(String[] args) {
Frame frame = new Frame("TestBorderLayout"); frame.setVisible(true); frame.setBounds(200,200,400,400); //东西南北分布 Button east = new Button("East"); Button wast = new Button("Wast"); Button south = new Button("South"); Button north = new Button("North"); Button center = new Button("Center"); frame.add(east,BorderLayout.EAST); frame.add(wast,BorderLayout.WEST); frame.add(south,BorderLayout.SOUTH); frame.add(north,BorderLayout.NORTH); frame.add(center,BorderLayout.CENTER); frame.addWindowListener(new WindowAdapter() {
@Override public void windowClosing(WindowEvent e) {
System.exit(0); } }); }}

在这里插入图片描述(3)GridLayout 表格布局

package 狂神说__AWT;import java.awt.*;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;public class TestGridLayout {
public static void main(String[] args) {
Frame frame = new Frame(); frame.setBounds(200,200,400,400); frame.setVisible(true); Button button1 = new Button("button1"); Button button2 = new Button("button2"); Button button3 = new Button("button3"); Button button4 = new Button("button4"); Button button5 = new Button("button5"); Button button6 = new Button("button6"); //表格布局 frame.setLayout(new GridLayout(3,2));//三行两列 frame.add(button1); frame.add(button2); frame.add(button3); frame.add(button4); frame.add(button5); frame.add(button6); frame.addWindowListener(new WindowAdapter() {
@Override public void windowClosing(WindowEvent e) {
System.exit(0); } }); }}

在这里插入图片描述综合:用布局如下的界面:

在这里插入图片描述

package 狂神说__AWT;import java.awt.*;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;public class FrameComprehensive {
public static void main(String[] args) {
Frame frame = new Frame(); Panel panel1 = new Panel(new BorderLayout()); Panel panel2 =new Panel(new GridLayout(2,1));//这个面板分成两行一列 Panel panel3=new Panel(new BorderLayout()); Panel panel4=new Panel(new GridLayout(2,2));//这个面板分成两行两列 frame.setVisible(true); frame.setBounds(200,200,400,400); frame.setLayout(new GridLayout(2,1)); panel1.add(new Button("button1"),BorderLayout.WEST); panel1.add(new Button("button3"),BorderLayout.EAST); panel2.add(new Button("button5")); panel2.add(new Button("button6")); panel1.add(panel2,BorderLayout.CENTER); panel3.add(new Button("button2"),BorderLayout.WEST); panel3.add(new Button("button4"),BorderLayout.EAST); for (int i = 7; i <=10; i++) {
panel4.add(new Button("button"+i)); } panel3.add(panel4,BorderLayout.CENTER); frame.add(panel1); frame.add(panel3); frame.addWindowListener(new WindowAdapter() {
@Override public void windowClosing(WindowEvent e) {
System.exit(0); } }); }}

在这里插入图片描述

转载地址:http://kgxzi.baihongyu.com/

你可能感兴趣的文章
implicit declaration of function 这种警告问题的原因及解决方法
查看>>
utorrent如何处理占资源过大的问题
查看>>
<好文分享>妖怪和和尚过河问题
查看>>
uTP协议的前世今生(from wikipedia)
查看>>
uTP协议的前世今生(from wikipedia)
查看>>
utp的包头格式<2>
查看>>
开源搜索引擎的比较(收藏几个博客文章)最近要做搜索系统的研究方向
查看>>
asii码表
查看>>
<读书笔记>WebUsage Mining:Discovery and Applications of Usage Patterns from Web Data
查看>>
并查集(Disjoint Sets)
查看>>
在Linux下安装MATLAB
查看>>
readme
查看>>
微服务概念
查看>>
数据库分库分表
查看>>
hibernate inverse 和cascade讲解
查看>>
建模工具Rose的学习
查看>>
javascript ajax提出异步请求
查看>>
Hibernate 中的 QBC
查看>>
解快局域网共享问题
查看>>
xp常用命令
查看>>