Java桌面精灵基础——swing类的使用与关键代码

当~当当当!首先是自我介绍以及写此篇随笔的目的。

:21岁,是学生。专业为Android移动智能设备,Java为必修课所以有较为浅薄的Java知识。

写这篇文章的目的:在小学的时候用过某桌面精灵,当时对这种小程序感到很好奇,一个2D人物竟然能穿梭游荡于桌面与浏览器之间,并且通过各自点击拖拽事件可以展现出不同的形态

 参考文章

创建一个桌面精灵不可避免地要将图片显示在桌面上,所以我们第一步就是如何在java中编写代码实现一个窗口

  • 创建空白窗口
import javax.swing.*;
public class Text01_3 {
    public static void main(String[] args) {
        //设置常量宽度高度
        final int Width = 400;
        final int Height = 400;
        //框体名称、宽度高度
        JFrame f = new JFrame("今天的天气真好呢~");
        f.setSize(Width, Height);
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.setVisible(true);
        
    }
}

 窗口的名字可以在JFrame("");中进行设置,同时也可以用 setSize()方法对窗口的宽度高度进行设置,实际效果如下(400X400)

  

  • 创建完窗口后,可以对窗口内容进行设置
import javax.swing.*;
public class Text01_4 {

    
    public static void main(String[] args) {
        //顶级容器或顶级组件
        JFrame f = new JFrame("这是一个窗口");
        f.setSize(400,400);
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.setVisible(true);
        //中间组件
        JPanel contentPane = new JPanel();
        f.setContentPane(contentPane);
        //基本组件
        
        //这是界面内的按钮
        JButton btn = new JButton("这是一个按钮"); 
        contentPane.add(btn);
        
        //从此处截至代码不会显示按钮,必须进行f.setVisible(true);操作才能正常显示按钮
        //为窗口上方设置一行菜单栏
        JMenuBar menubar = new JMenuBar();
        f.setJMenuBar(menubar);
        JMenu menu1 = new JMenu("这是一哦");
        JMenu menu2 = new JMenu("这是二哦");
        JMenu menu3 = new JMenu("这是三哦");
        JMenu menu4 = new JMenu("这是四哦");
        JMenu menu5 = new JMenu("这是五哦");
        JMenu menu6 = new JMenu("这是六哦");
        menubar.add(menu1);
        menubar.add(menu2);
        menubar.add(menu3);
        menubar.add(menu4);
        menubar.add(menu5);
        menubar.add(menu6);
        //对菜单栏的内容功能进行扩充
        JMenuItem item1 = new JMenuItem("我是一的大儿子");
        JMenuItem item2 = new JMenuItem("我是一的二儿子");
        JMenuItem item3 = new JMenuItem("我是一的小儿子");
        menu1.add(item1);
        menu1.add(item2);
        menu1.addSeparator();//给二者之间添加横线
        menu1.add(item3);
        
        f.setVisible(true);//必须要刷新一下,不然添加的基本组件出不来    
    }
}

效果如下

原文地址:https://www.cnblogs.com/occlive/p/10573970.html