日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

Java实现拼图小游戏(2)——菜单搭建(有关Java中的JMenuBar知识点)

發(fā)布時間:2023/12/29 java 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java实现拼图小游戏(2)——菜单搭建(有关Java中的JMenuBar知识点) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

菜單搭建

  • 一、前言
  • 二、搭建步驟
    • 1. 創(chuàng)建JMenuBar
    • 2. 創(chuàng)建Jmenu
    • 3. 創(chuàng)建JMenuItem
    • 4. 將JMenuItem放到Jmenu中
    • 5. 將Jmenu放到JMeanuBar中
    • 6. 將JMenuBar添加到整個JFrame中
  • 三、完整代碼
  • 四、優(yōu)化代碼
  • 五、結(jié)語

一、前言

本文主要是實(shí)現(xiàn)拼圖小游戲中的菜單搭建

二、搭建步驟

1. 創(chuàng)建JMenuBar

JMenuBar的中文含義是菜單欄,也就是我們會在小游戲最上面那一欄看到的東西,在小游戲中我們的菜單欄如下所示

要創(chuàng)建菜單欄,就要new一個對象

JMenuBar jMenuBar = new JMenuBar();

2. 創(chuàng)建Jmenu

Menu類表示從菜單欄部署的下拉菜單組件,在本游戲中有兩個:功能和關(guān)于我們,那么我們也要自定義一個變量名來寫這兩個菜單組件,此處為了能夠見名知意,我們將兩個變量名設(shè)置functionJMenuaboutJMenu,如果讀者想要設(shè)置為其它名字也是可以的,括號內(nèi)只需要傳遞參數(shù)(名字)即可

JMenu functionJMenu = new JMenu("功能"); JMenu aboutJMenu = new JMenu("關(guān)于我們");

3. 創(chuàng)建JMenuItem

同樣,我們要new一個對象,并在括號內(nèi)傳遞參數(shù)(名字)

JMenuItem restartItem = new JMenuItem("重新游戲"); JMenuItem reloginItem = new JMenuItem("重新登錄"); JMenuItem closeItem = new JMenuItem("關(guān)閉游戲"); JMenuItem accountItem = new JMenuItem("公眾號");

4. 將JMenuItem放到Jmenu中

當(dāng)我們創(chuàng)建完了下拉菜單中的內(nèi)容時,我們要將下拉菜單中的內(nèi)容放到菜單中,這樣才能實(shí)現(xiàn)下圖的效果,要注意的是下拉菜單中的內(nèi)容要添加到對應(yīng)的菜單中,要看清楚括號內(nèi)傳遞的參數(shù),此處括號內(nèi)傳遞的參數(shù)是上文提到的新的對象

這里我們使用add函數(shù)來實(shí)現(xiàn)

functionJMenu.add(restartItem); functionJMenu.add(reloginItem); functionJMenu.add(closeItem); aboutJMenu.add(accountItem);//將"關(guān)于我們"下條目添加到"關(guān)于我們"里

5. 將Jmenu放到JMeanuBar中

創(chuàng)建完了菜單以后,要把菜單(剛剛被我們定義的 functionJMenu 和 aboutJMenu )放到菜單欄里,這樣菜單欄里面才會有兩個單獨(dú)的菜單,效果如下圖所示

同樣,我們使用add函數(shù)來實(shí)現(xiàn)

jMenuBar.add(functionJMenu); jMenuBar.add(aboutJMenu);

6. 將JMenuBar添加到整個JFrame中

由于我們現(xiàn)在所寫的一切東西都是要能夠在屏幕上看到的,而JFrame是屏幕上window的對象,有了它才能有可視化界面,所以給我們要整個界面設(shè)置菜單,將JMenuBar添加到整個JFrame中,這樣才能在界面中有一個單獨(dú)一欄的菜單欄
這里我們使用set函數(shù)來設(shè)置JMenuBar

this.setJMenuBar(jMenuBar);

三、完整代碼

import javax.swing.*;public class GameJFrame extends JFrame {public GameJFrame(){//設(shè)置界面大小this.setSize(603,680);//設(shè)置標(biāo)題this.setTitle("拼圖小游戲 V1.0");//設(shè)置永遠(yuǎn)置頂this.setAlwaysOnTop(true);//設(shè)置程序隨著窗口關(guān)閉而結(jié)束運(yùn)行//this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);this.setDefaultCloseOperation(3);//設(shè)置界面居中this.setLocationRelativeTo(null);//初始化菜單//創(chuàng)建整個菜單對象(創(chuàng)建JMenuBar)JMenuBar jMenuBar = new JMenuBar();//創(chuàng)建"功能"和"關(guān)于我們"(創(chuàng)建JMenu)JMenu functionJMenu = new JMenu("功能");JMenu aboutJMenu = new JMenu("關(guān)于我們");//創(chuàng)建菜單下條目(創(chuàng)建JMenuItem)JMenuItem restartItem = new JMenuItem("重新游戲");JMenuItem reloginItem = new JMenuItem("重新登錄");JMenuItem closeItem = new JMenuItem("關(guān)閉游戲");JMenuItem accountItem = new JMenuItem("公眾號");//將"功能"下條目添加到"功能"里(將JMenuItem放到JMenu中)functionJMenu.add(restartItem);functionJMenu.add(reloginItem);functionJMenu.add(closeItem);aboutJMenu.add(accountItem);//將"關(guān)于我們"下條目添加到"關(guān)于我們"里//將JMenu放到JMenuBar中jMenuBar.add(functionJMenu);jMenuBar.add(aboutJMenu);//給整個界面設(shè)置菜單,將JMenuBar添加到整個JFrame中this.setJMenuBar(jMenuBar);//設(shè)置可視化界面this.setVisible(true);} }

四、優(yōu)化代碼

如果我們的需求發(fā)生了變化需要改變代碼的話,我們需要一條條看代碼并修改,這樣效率非常低,那么我們就需要把實(shí)現(xiàn)一個功能的代碼全部都打包放到一個方法中,這樣我們?nèi)绻枰薷哪骋粋€功能的時候,只需要去相應(yīng)的方法中修改即可
在IDEA中,我們選中需要打包的代碼,使用快捷鍵Ctrl+Alt+M可以直接打包生成一個類

我們只需要寫一個方法名即可生成

這樣的話我們的代碼就會簡潔很多,而且修改起來也會非常方便

五、結(jié)語

在寫這個程序的時候,會遇到搭建菜單但是無法實(shí)現(xiàn)的問題,如果讀者遇到了同樣的問題,可以點(diǎn)擊下方鏈接查看解決方法
【搭建完菜單后運(yùn)行不顯示菜單的原因及其解決方法(拼圖小游戲)】

總結(jié)

以上是生活随笔為你收集整理的Java实现拼图小游戏(2)——菜单搭建(有关Java中的JMenuBar知识点)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。