java图形化Swing教程(二)

本文是一篇关于Java Swing的实践教程,涵盖按钮事件、主题切换、击键动作和鼠标操作。通过示例代码,展示了如何创建全屏窗口,实现按钮颜色变化、主题切换、快捷键支持以及鼠标交互功能,如绘制和删除小正方形。
摘要由CSDN通过智能技术生成

与多线程、泛型等不同,Swing主要在于使用。
下面主要放代码和注释,少说话。

(一)共用代码

所有继承JFrame的类都要有一个开始的框架来包含他们,这里直接给出框架,以下几点中不会重复书写。

package Event;

import java.awt.*;
import javax.swing.*;

/**
 * 
 * @author QuinnNorris
 * 共用代码
 */
public class BaseFrame {
   
    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub

        // 开启一个线程,所有的Swing组件必须由事件分派线程进行配置,线程将鼠标点击和按键控制转移到用户接口组件。
        EventQueue.invokeLater(new Runnable() {
            // 匿名内部类,是一个Runnable接口的实例,实现了run方法
            public void run() {

                JFrame frame = new *********();
                // 将*号的地方换成你实现的JFrame的子类,来实现你的代码

                frame.setExtendedState(Frame.MAXIMIZED_BOTH);
                // 将窗口最大化

                frame.setTitle("Christmas");
                // 设置窗口标题

                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                // 选择当用户关闭框架的时候进行的操作 ,在有些时候需要将窗口隐藏,不能直接退出需要用到这个方法

                frame.setVisible(true);
                // 将窗口可见化,这样以便用户在第一次看见窗口之前我们能够向其中添加内容
            }

        });
    }

}

输出结果:得到一个基本的公用框架,以后的内容可以在其他类中书写,放入这个框架中。

(二)按钮事件

package Event;

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

/**
 * 
 * @author QuinnNorris 按钮事件
 */
public class ButtonFrame extends JFrame {
   

    private JPanel buttonPanel;
    private static final int DEFAULT_WIDTH = 300;
    private static final int DEFAULT_HEIGHT = 200;

    public ButtonFrame() {
        setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
        // 设置默认宽度和高度

        buttonPanel = new JPanel();
        // 将类的实例域中的JPanel面板对象实例化

        makeButton("yellow",Color.YELLOW);
        makeButton("blue",Color.BLUE);
        makeButton("red",Color.RED);
        //调用makeButton方法来创建并添加按钮

        add(buttonPanel);
        // 我们将这个添加好按钮的面板添加到原框架中


    }

    /**
     * 通过方法来创建按钮,并且完成关联监视器和添加入面板的操作
     * @param name 创建按钮的标识
     * @param backgroundColor 点击按钮后改变的颜色,匿名内部类只能访问final修饰的变量,所以要用final
     */
    public void makeButton(String name,final Color backgroundColor){

        JButton colorButton = new JButton(name);
        //通过不同的标识名,我们创建按钮

        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值