1. 程式人生 > >連連看小遊戲_java

連連看小遊戲_java

先寫GUI。

首先初始化框架,選單,按鈕,需要把選單和按鈕都新增在框架中。注意新增的順序,首先要設定選單,再設定框架,再設定按鈕,如果交換了設定選單和框架的順序,會導致選單顯示不出,被框架擋住。對選單設定了三個選項,第一個選項有五個下拉按鍵,用迴圈新增,第二個和第三個選項的下拉按鍵直接新增。

GUI程式碼如下:

package gui;

import java.awt.Font;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;

public class MyFrame extends JFrame{
	JMenuBar menuBar=new JMenuBar();
	JMenu j1 = new JMenu();
	JMenu j2 = new JMenu();
	JMenu j3 = new JMenu();
	JButton button=new JButton();
	public MyFrame() {
		initFrame();
	}
	public void initFrame() {
		j1.setFont(new Font("微軟雅黑",Font.PLAIN,12));
		j1.setText("請選擇關卡(L)");//設定選單
		j1.setMnemonic('L');
		j2.setText("請選擇玩法模型(M)");//設定選單
		j2.setFont(new Font("微軟雅黑",Font.PLAIN,12));
		j2.setMnemonic('M');
		j3.setText("請選擇圖片(P)");//設定選單
		j3.setFont(new Font("微軟雅黑",Font.PLAIN,12));
		j3.setMnemonic('P');
		//第一個下拉表
		for(int i=1;i<6;i++) {
			JMenuItem item=new JMenuItem();
			String str="";
			switch (i) {
			case 1:
				str="無變化";
				break;
			case 2:
				str="向下串";
				break;
			case 3:
				str="向上串";
				break;
			case 4:
				str="向左串";
				break;
			case 5:
				str="向右串";
				break;
			}
			item.setText("第"+i+"關:"+str);
			item.setFont(new Font("微軟雅黑",Font.PLAIN,12));
			j1.add(item);
		}
		//第二個下拉表
		JMenuItem d=new JMenuItem();
		d.setText("預設模型");
		d.setFont(new Font("微軟雅黑",Font.PLAIN,12));
		j2.add(d);
		JMenuItem o=new JMenuItem();
		o.setText("一折模型");
		o.setFont(new Font("微軟雅黑",Font.PLAIN,12));
		j2.add(o);
		//第三個下拉表
		JMenuItem de=new JMenuItem();
		de.setText("預設圖片");
		de.setFont(new Font("微軟雅黑",Font.PLAIN,12));
		j3.add(de);
		JMenuItem i=new JMenuItem();
		i.setText("圖示圖片");
		i.setFont(new Font("微軟雅黑",Font.PLAIN,12));
		j3.add(i);
		menuBar.add(j1);
		menuBar.add(j2);
		menuBar.add(j3);
		//按鈕
		button.setText("新遊戲");
		button.setFont(new Font("微軟雅黑",Font.PLAIN,12));
		button.setBounds(5, 5, 400, 20);
		this.setJMenuBar(menuBar);
		this.setTitle("連連看GUI");//設定標題
		this.setSize(430, 585);//框的大小
		this.setVisible(true);//true表示顯示視窗,可見
		this.getContentPane().setLayout(null);//佈局管理器清空,取消預設設定
		this.setResizable(false);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//關閉
		this.add(button);	
	}
	public static void main(String[] args) {
		new MyFrame();
	}
}

GUI介面如下:

介面只做好了選單部分,還有遊戲的主要部分未完成。

 

未完待續