Java学习笔记四(可视化的基基基基础)

不算是完整的代码,便于自己理解的写法。

import java.awt.Container;

import java.awt.FlowLayout;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingConstants;

public class GUIDemo extends JFrame {
    private JLabel label1;                  

    private JButton button;


    public GUIDemo() {
        Container container = getContentPane();               //初始化一个容器,可以添加控件了
        /*
         * 界面布局相关
         * FlowLayout 顺序布局
         * BorderLayout 边界布局
         * GridLayout 网格布局

         */

        /*

         * FlowLayout 顺序布局

         * container.setLayout(new FlowLayout());   按顺序铺排

         */

        /*
         * BordeLayout 边界布局
         * container.add(button[0],BorderLayout.NORTH);     将按钮设置在东、南、西、北、中区
         * container.add(button[1],BorderLayout.SOUTH);
         * container.add(button[2],BorderLayout.EAST);
         *                                      WEST CENTER
         */
        /*
         * GirdLayout 网格布局
         * private GridLayout grid1;

         * grid1 = new GirdLayout(2,4,5,5);  2行4列  水平、垂直间距为5

         * grid1 = new GirdLayout(2,4);  2行4列 自动间距

         * container.setLayout(grid1);

         */



        /*
         * JLabel标签
         */
        container.add(label1);
        label1 = new JLabel("标签的名字");
        label1.setHorizontalAlignment(SwingConstants.CENTER);  //设置位置

        label1.setVerticalAlignment(SwingConstants.BOTTOM);     //TOP顶部  LEFT 左边  RIGHT右边


        /*
         * JButton按钮
         */
        container.add(button);
        button = new JButton("按钮的名字");
        button.addActionListener(this);

        }


        /*
         * 图标Icon
         */
        Icon bug = new ImageIcon("img.jpg");
        label1 = new JLabel("图片",bug.SwingConstants.LEFT);    //将label设置在图片的右边

        }

    /*
     * 监听方法
     * 只有实现了监听器接口的类才是监听器
     * 事件处理过程中涉及三类对象:事件对象、事件源(单机一个按钮)、事件监听器(处理事件)
     * 编写事件处理程序的步骤:
     * (1)定义监听器类,在类的定义中完成事件的处理(实现actionPerformed方法)
     * (2)通过new创建事件监听器对象
     * (3)为组件注册相应的事件监听器  add****Listener
     * 三种方式 :
     * (1)直接实现:在图形界面的类中实现接口 addActionListener()括号中可以直接写this
     * (2)内部类方式:在图形界面类内部实现另一个监听器类   addActionListener(new 内部类())
     * (3)匿名内部类方式 : addActionListener(new ActionListener(){
     *                                            public void actionPerformed(ActionEvent e){
     *                                                        ...;})

     */

     //下面是一个监听器类的实现 用的内部类

     class JianTingLei implements ActionListener{
        @Override
        public void actionPerformed(ActionEvent e) {
        if(e.getSource()==button)
            System.out.println(e.getActionCommand());
            }

        }


       /*

         * 基本操作

         */

    public static void main(String[] args) {
        JFrame frame = new JFrame("框的名称");
        frame.setSize(400,400);

        frame.setVisible(true);}

}


      容器类: JFrame  JApplet  JDialog JPanel

      组件类: JButton  JTextField  JTextArea  JComboBox  JList  JRdioButton  JMenu

      辅助类: Graphics  Color  Font  FontMetrics Dimension  LayoutManager


      事件模型:  用户 --> 组件 -->  动作 -->  事件 对象 -->  事件监听器-->  事件处理方法

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值