首页 > 其他分享 >02-界面设置和菜单搭建

02-界面设置和菜单搭建

时间:2022-12-06 21:33:09浏览次数:42  
标签:02 菜单 界面 关闭程序 点击 设置 控制台 true

  • 进行界面设置

    登陆界面

    package com.xiyang.ui;
    
    import javax.swing.*;
    
    public class LoginJframe extends JFrame {
        //LoginJframe表示登陆界面
        //以后所有登录相关的代码,都写在这里
    
        public LoginJframe(){
            //在创建登陆界面的时候,同时给这个界面去设置一个信息
            //比如,宽和高,直接展示出来
    
            //设置界面的宽和高
            this.setSize(488,430);
            //设置界面的标题
            this.setTitle("登陆");
            //设置界面置顶
            this.setAlwaysOnTop(true);
            //设置界面居中
            this.setLocationRelativeTo(null);
    
            //设置关闭方式,当点击右上角的x后,程序停止运行
            //括号里可以写0-3
            //0表示在点击x的时候不做任何事情,只有在控制台点击停止运行才能关闭程序
            //1表示在点击x的时候,程序窗口会被关闭,但是程序不会关闭,只有在控制台点击停止运行才能关闭程序
            //2表示当有多个窗口出现时,必须要关闭所有窗口才能让程序停止(所有界面都要设置成2才有效)
            //3表示当我们关闭程序窗口时,程序也会停止,不用在控制台关闭程序
            this.setDefaultCloseOperation(3);
    
            //界面默认是隐藏的,我们需要调用方法将他显示出来
            //false代表隐藏界面,true代表显示界面
            this.setVisible(true);
        }
    }
    

    注册界面

    package com.xiyang.ui;
    
    import javax.swing.*;
    
    public class RegisterJframe extends JFrame {
        //RegisterJframe表示注册界面
        //以后所有注册相关的代码,都写在这里
    
        public RegisterJframe(){
            //设置界面的宽和高
           this.setSize(488,500);
            //设置界面的标题
            this.setTitle("注册");
            //设置界面置顶
            this.setAlwaysOnTop(true);
            //设置界面居中
            this.setLocationRelativeTo(null);
    
            //设置关闭方式,当点击右上角的x后,程序停止运行
            //括号里可以写0-3
            //0表示在点击x的时候不做任何事情,只有在控制台点击停止运行才能关闭程序
            //1表示在点击x的时候,程序窗口会被关闭,但是程序不会关闭,只有在控制台点击停止运行才能关闭程序
            //2表示当有多个窗口出现时,必须要关闭所有窗口才能让程序停止(所有界面都要设置成2才有效)
            //3表示当我们关闭程序窗口时,程序也会停止,不用在控制台关闭程序
            this.setDefaultCloseOperation(3);
    
            //界面默认是隐藏的,我们需要调用方法将他显示出来
            //false代表隐藏界面,true代表显示界面
            this.setVisible(true);
        }
    }
    
    

    游戏主界面

    package com.xiyang.ui;
    
    import javax.swing.*;
    
    public class GameJframe extends JFrame {
        //GameJframe表示游戏主界面
        //以后跟游戏相关的所有逻辑,都写在这里
    
        public GameJframe(){
            //设置界面的宽和高
           this.setSize(603,680);
    
           //设置界面的标题
            this.setTitle("拼图游戏1.0");
            //设置界面置顶
            this.setAlwaysOnTop(true);
            //设置界面居中
            this.setLocationRelativeTo(null);
    
            //设置关闭方式,当点击右上角的x后,程序停止运行
            //括号里可以写0-3
            //0表示在点击x的时候不做任何事情,只有在控制台点击停止运行才能关闭程序
            //1表示在点击x的时候,程序窗口会被关闭,但是程序不会关闭,只有在控制台点击停止运行才能关闭程序
            //2表示当有多个窗口出现时,必须要关闭所有窗口才能让程序停止(所有界面都要设置成2才有效)
            //3表示当我们关闭程序窗口时,程序也会停止,不用在控制台关闭程序
            this.setDefaultCloseOperation(3);
    
            //界面默认是隐藏的,我们需要调用方法将他显示出来
            //false代表隐藏界面,true代表显示界面
            this.setVisible(true);
    
        }
    }
    
    
  • 菜单制作

    image-20221206211002941

    菜单搭建以及优化

    package com.xiyang.ui;
    
    import javax.swing.*;
    
    public class GameJframe extends JFrame {
        //GameJframe表示游戏主界面
        //以后跟游戏相关的所有逻辑,都写在这里
    
        public GameJframe(){
            //初始化界面
            initJFrame();
    
            //初始化菜单
            initJMenBar();
    
    
            //界面默认是隐藏的,我们需要调用方法将他显示出来
            //false代表隐藏界面,true代表显示界面
            this.setVisible(true);
    
        }
    
        private void initJMenBar() {
            //1.创建整个的菜单对象
            JMenuBar jMenuBar = new JMenuBar();
    
            //2.创建菜单上面的两个选项的对象
            JMenu functionJMenu = new JMenu("功能");
            JMenu aboutJMenu = new JMenu("关于我们");
    
            //3.创建选项下面的条目对象
            JMenuItem replayItem = new JMenuItem("重新游戏");
            JMenuItem reLoginItem = new JMenuItem("重新登陆");
            JMenuItem closeItem = new JMenuItem("关闭游戏");
    
            JMenuItem accountItem = new JMenuItem("公众号");
    
            //4.将每一个选项下的条目添加到选项中
            functionJMenu.add(replayItem);
            functionJMenu.add(reLoginItem);
            functionJMenu.add(closeItem);
    
            aboutJMenu.add(accountItem);
            //5.将菜单里面的两个选项添加到菜单中
            jMenuBar.add(functionJMenu);
            jMenuBar.add(aboutJMenu);
    
            //6.给整个界面设置菜单
            this.setJMenuBar(jMenuBar);
        }
    
        private void initJFrame() {
            //设置界面的宽和高
            this.setSize(603,680);
    
            //设置界面的标题
            this.setTitle("拼图游戏1.0");
            //设置界面置顶
            this.setAlwaysOnTop(true);
            //设置界面居中
            this.setLocationRelativeTo(null);
    
            //设置关闭方式,当点击右上角的x后,程序停止运行
            //括号里可以写0-3
            //0表示在点击x的时候不做任何事情,只有在控制台点击停止运行才能关闭程序
            //1表示在点击x的时候,程序窗口会被关闭,但是程序不会关闭,只有在控制台点击停止运行才能关闭程序
            //2表示当有多个窗口出现时,必须要关闭所有窗口才能让程序停止(所有界面都要设置成2才有效)
            //3表示当我们关闭程序窗口时,程序也会停止,不用在控制台关闭程序
            this.setDefaultCloseOperation(3);
        }
    }
    
    

标签:02,菜单,界面,关闭程序,点击,设置,控制台,true
From: https://www.cnblogs.com/Alluw/p/16960621.html

相关文章

  • idea2022之后的版本打不开的原因
    1.目前我这边遇到的是之前安装了旧版本且是用cracker激活的,然后新版本它会自动迁移旧版本的一些配置,导致用了旧版本的cracker然后起不来;可以去掉,2022之后的版本应该是在Ap......
  • 【译】Desmond2022-4_3构建模型系统
    对水性生物系统进行模拟需要准备生物分子,如蛋白质和配体,加入反离子以中和系统,选择模拟箱的大小,使用明确的溶剂分子溶解溶质,以及将蛋白质与膜双层对齐(如果使用)。如果必须手......
  • 【译】Desmond2022-4_4从maestro运行Desmond模拟
    Desmond面板使您能够设置和运行Desmond的主要任务:分子动力学、最小化、模拟退火、复制交换和元动力学工作。这些面板的设计是为了使设置这些类型的工作尽可能简单,并提供最......
  • 2022合肥学院ACM程序设计大赛-正式赛题解
    A.孤独摇滚计算下一个回文年,输出即可。#include<stdio.h>intcheck(intx){if(x/1000==x%10&&x/100%10==x%100/10)return1;return0;}intmain(......
  • 【译】Desmond2022-4_2计算概述
    2.计算概述Desmond工作应该从准备好的结构开始。对于蛋白质,我们建议用蛋白质制备向导来制备(详见《蛋白质制备指南-内容》)。对于其他类型的分子,如配体,分子应该有一个相当好......
  • hdu1024 Max Sum Plus Plus--DP
    原题链接:​​http://acm.hdu.edu.cn/showproblem.php?pid=1024​​一:原题内容ProblemDescriptionNowIthinkyouhavegotanACinIgnatius.L's"MaxSum"pro......
  • hdu1026 Ignatius and the Princess I --BFS & 记录路径 & 与DFS的比较
    原题链接:​​http://acm.hdu.edu.cn/showproblem.php?pid=1026​​一:题意一个n*m的矩阵代表一个迷宫,(0,0)是起点,(n-1)(m-1)是终点,每移动一步一秒。迷宫每点意义是:. 该点可以......
  • NOIP2022 T3 建造军营
    只有B国炸毁了图的割边,才会使得图不连通,进而可能会导致军营不连通。也就是说,A国可以随意地看守或不看守不是割边的边。因此想到边双缩点后树形DP。为什么边双缩点后会......
  • NOIP2022 总结
    一定要先把可能写出的正解写好了再去打别的暴力(时间不足导致T3建造军营推出式子但没时间写\(100\to0\))。特殊的多测不清空(T1种花未清空读入时的字符串数组\(100\t......
  • Navicat Premium 16 (mac,windows均有)安装破解激活图文教程【2022年12月6日亲测有效】
    Navicat16破解Navicat16Mac和Windows最新版破解教程【永久激活,2022年12月16日亲测有效】windows版本破解下载安装包和破解工具navicat16最新版:点击前往下载navicat1......