我把皮小浪の的 蓝色妖姬系列做进了java窗口

简介: 我把皮小浪の的 蓝色妖姬系列做进了java窗口

---在这里插入图片描述

👨‍💻个人主页:@元宇宙-秩沅

hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅!

本文由 秩沅 原创

收录于专栏 unity实战入门


相关文章参考:Java -GUI界面设计

       ⭐效果图如下 ⭐
AI 代码解读

在这里插入图片描述


 ⭐涉及的相关类的包含关系图 ⭐
AI 代码解读

在这里插入图片描述
# 视频入口请点击

@[TOC]

一,基本创建


👨‍💻窗口是怎么创建的

图片
在这里插入图片描述

代码

package jiemian;

import javax.swing.JFrame;
@SuppressWarnings("unused")
public class Man {
   
   
    public static void main(String[] args) {
   
   

        JFrame windows1  = new JFrame("第一个窗口");
        JFrame windows2 = new JFrame("第二个窗口");
       //setVisible 设置可见状态
        windows1.setVisible(true);  
        windows1.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        windows2.setVisible(true);
        windows1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}
AI 代码解读

关键代码解释

windows1.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
windows1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); `
那么括号里面的是什么意思呢,见如下:

详情文档,点击进入:

1)DO_NOTHING_ON_CLOSE(在 WindowConstants 中定义):
          不执行任何操作;要求程序在已注册的 WindowListener 对象的 windowClosing 方法中处理该操作。
    (2)HIDE_ON_CLOSE(在 WindowConstants 中定义):
          调用任意已注册的 WindowListener 对象后自动隐藏该窗体。
    (3)DISPOSE_ON_CLOSE(在 WindowConstants 中定义):
          调用任意已注册 WindowListener 的对象后自动隐藏并释放该窗体。
    (4)EXIT_ON_CLOSE(在 JFrame 中定义):
           使用 System exit 方法退出应用程序。仅在应用程序中使用。
AI 代码解读

👨‍💻美化窗口和组件添加

背景色

   //getContentPane 获取内容面板
    Container con = windows1.getContentPane();
    //将背景变成黑色
    con.setBackground(Color.BLACK );
      图如下:
AI 代码解读

在这里插入图片描述

大小设置

    //设置边界大小 ,Bounds -->边界
    windows1.setBounds(200,200,200,400);
    如下图所示:
AI 代码解读

在这里插入图片描述
在这里插入图片描述


👨‍💻完整代码

package jiemian;

import java.awt.*;
import javax.swing.*;
@SuppressWarnings("unused")
public class Man {
   
   
    public static void main(String[] args) {
   
   

        JFrame windows1  = new JFrame("第一个窗口");
        //getContentPane 获取内容面板
        Container con = windows1.getContentPane();
        //设置背景色
        con.setBackground(Color.BLACK );
        //设置边界大小
        windows1.setBounds(200,200,200,400);
        //setVisible 设置可见状态
        windows1.setVisible(true);  
        windows1.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

    }
}
AI 代码解读

---


二, 皮小浪我来了

放大

👨‍💻菜单条,菜单,子菜单

JMenuBar menubar; //菜单条
JMenu menu,subMenu; //菜单
JMenuItem i1,i2,i3,i4,i5; //子菜单

👨‍💻照片的插入

subMenu = new JMenu("切尔西");
subMenu.setIcon(new ImageIcon("切尔西.jpg"));

== 照片素材需保存至对应的项目包中 ==
在这里插入图片描述

👨‍💻相关的代码以及解释👍

package ttt;

import javax.swing.*;

import java.awt.Color;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
import static javax.swing.JFrame.*;
@SuppressWarnings("unused")
public class MM {
   
   

    public static void main(String[] args) 
    {
   
   
        @SuppressWarnings("unused")
        WindowMenu win=new WindowMenu("皮小浪",500,0,600,500);
    }
}
class WindowMenu extends JFrame
  {
   
   

    JMenuBar menubar;    //菜单条
    JMenu menu,subMenu;  //菜单
    JMenuItem i1,i2,i3,i4,i5;  //子菜单
    public WindowMenu(){
   
   }
    public WindowMenu(String s,int x,int y,int w,int h){
   
   
        init(s);
        setLocation(x,y);  //设置位置
        setSize(w,h);      //设置大小
        setVisible(true);  //激活可见
        setDefaultCloseOperation(DISPOSE_ON_CLOSE);
    }
    void init(String s)
    {
   
   
        setTitle(s);
        menubar=new JMenuBar();
        menu=new JMenu("get jio");
        subMenu = new JMenu("切尔西");
        //给菜单添加图片
        subMenu.setIcon(new ImageIcon("切尔西.jpg"));
        //给子菜单添加图片
        i1=new JMenuItem("粉红回忆",new ImageIcon("粉红回忆.jpg"));
        i2=new JMenuItem("红色风暴",new ImageIcon("红色风暴.jpg"));
        i3=new JMenuItem("蓝色妖姬",new ImageIcon("蓝色妖姬.jpg"));
        i4=new JMenuItem("黑色沉默",new ImageIcon("黑色沉默.jpg"));
        i5=new JMenuItem("清纯萝莉",new ImageIcon("清纯萝莉.jpg"));

        //i1.setAccelerator(KeyStroke.getKeyStroke('A'));
        //i2.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK));
        menu.add(i1);
        //menu.addSeparator();
        //从菜单menu中添加子菜单
        menu.add(i2);
        menu.add(i3);
        menu.add(i4);
        menu.add(i5);

        //在菜单条中添加 menu 和submenu两个菜单
        menubar.add(menu);
        menubar.add(subMenu);
        //关键:设置菜单条
        setJMenuBar(menubar);
    }
}
AI 代码解读

三,语句解释


👨‍💻关键语句解释👍

   //关键:设置菜单条
    setJMenuBar(menubar);

    该语句若消失则显示不出画面,因为菜单和子菜单都在菜单条上面,
    所以设置菜单条最为重要
AI 代码解读

(1)DO_NOTHING_ON_CLOSE:

 不执行任何操作;要求程序在已注册的 WindowListener 对象的 windowClosing 方法中处理该操作。
AI 代码解读

(2)HIDE_ON_CLOSE

调用任意已注册的 WindowListener 对象后自动隐藏该窗体。
AI 代码解读

(3)DISPOSE_ON_CLOSE:

调用任意已注册 WindowListener 的对象后自动隐藏并释放该窗体。
AI 代码解读

(4)EXIT_ON_CLOSE:

使用 System exit 方法退出应用程序。仅在应用程序中使用。
AI 代码解读

👨‍💻注释语句解释👍

用于抑制编译器产生警告信息

@SuppressWarnings("serial")
AI 代码解读

抑制单类型警告

@SuppressWarnings("unchecked")
AI 代码解读

抑制所有类型警告

@SuppressWarnings("all")
AI 代码解读

去除属性上的黄色警告

@SuppressWarnings("unused") 表示该属性在方法或类中没有使用。添加此
AI 代码解读

相关文章参考:Java -GUI界面设计

你们的点赞👍 收藏⭐ 留言📝 关注✅是我持续创作,输出优质内容的最大动力!
栓Q

在这里插入图片描述

目录
打赏
0
0
0
0
4
分享
相关文章
hadoop java 创建文件夹 弹出窗口填写文件夹名称
hadoop java 创建文件夹 弹出窗口填写文件夹名称
66 0
|
3月前
|
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
180 4
Flink-06 Flink Java 3分钟上手 滚动窗口 时间驱动 Kafka TumblingWindow TimeWindowFunction TumblingProcessing
Flink-06 Flink Java 3分钟上手 滚动窗口 时间驱动 Kafka TumblingWindow TimeWindowFunction TumblingProcessing
68 0
java当中组件和窗口的相容问题(里面包含了这些方法的作用)
Java窗口和组件的布局指南,教你如何打造一个既美观又实用的GUI界面。
50 0
详解 Java 限流接口实现问题之理解固定窗口限流算法的窗口边界问题如何解决
详解 Java 限流接口实现问题之理解固定窗口限流算法的窗口边界问题如何解决
详解 Java 限流接口实现问题之固定窗口限流算法的实现原理是什么
详解 Java 限流接口实现问题之固定窗口限流算法的实现原理是什么
Java创建透明与任意形状窗口
Java创建透明与任意形状窗口
45 0
《手把手教你》系列技巧篇(二十三)-java+ selenium自动化测试-webdriver处理浏览器多窗口切换下卷(详细教程)
【4月更文挑战第15天】本文介绍了如何使用Selenium进行浏览器窗口切换以操作不同页面元素。首先,获取浏览器窗口句柄有两种方法:获取所有窗口句柄的集合和获取当前窗口句柄。然后,通过`switchTo().window()`方法切换到目标窗口句柄。在项目实战部分,给出了一个示例,展示了在百度首页、新闻页面和地图页面之间切换并输入文字的操作。最后,文章还探讨了在某些情况下可能出现的问题,并提供了一个简单的本地HTML页面示例来演示窗口切换的正确操作。
167 0
《手把手教你》系列技巧篇(二十一)-java+ selenium自动化测试-浏览器窗口的句柄(详细教程)
【4月更文挑战第13天】本文介绍了如何获取浏览器窗口句柄,句柄是标识浏览器窗口的唯一ID。文章首先解释了窗口句柄的概念,然后通过Java代码示例展示了在单个、多个窗口句柄情况下的操作,包括打印单个窗口句柄和获取所有窗口句柄的方法。在多窗口句柄的场景中,代码演示了如何在不同标签页之间切换。最后,文章强调了句柄在实际操作中的重要性,特别是在处理多个窗口时。
135 0
java -jar 命令隐藏黑窗口
java -jar 命令隐藏黑窗口
400 0

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等