⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmmainmenu.java

📁 请认真阅读您的文件包然后写出其具体功能(至少要20个字)。尽量不要让站长把时间都花费在为您修正说明上。压缩包解压时不能有密码。系统会自动删除debug和release目录
💻 JAVA
字号:
/* file name: GameMainMIDlet.java
 * Describe :this function modle is a main application
 */
 
 package j2me.demo;
 
 import javax.microedition.lcdui.*;
 import javax.microedition.midlet.*;
 import java.util.*;
 
 
 
 public class frmMainMenu extends Canvas 
 {
 	static final int chessspace=6; //棋格子的宽度和高度
	static final int linespace=108;//棋盘线的宽度和高度
	static final int top=10;  // 棋盘的上边距
	static final int left=10; // 棋盘的左边距离
    static final int blackchess=-1; // 黑色的棋子
	static final int whitechess=1;  // 白色的棋子
	static final int nonechess=0;   // 没有棋子 
    static final int chessradii=4;// 棋子的大小



	 
 	int [][] boardstate = new int[19][19];//chessboard
    int w=getWidth();
    int h=getHeight();

      	
 	//rivate Display gamedisplay;
 
 	public frmMainMenu()
 	{
 	}
 	
 	public void paint(Graphics g)
 	{
 		init();
 		DrawBackgound(g,252,222,10);
        DrawBoard(g);
	
 	}

	// 画出棋盘的背景
	// 
	private void DrawBackgound(Graphics g,int red,int green,int blue)
	{   
		
		g.setColor(red,green,blue);
		g.fillRect(0,0,w,h);
 	}

    // 初始数组
	private void init()
	{
       for(int i=0;i<19;i++)
	   {
		   for(int j=0;j<19;j++)
		   {
              boardstate[i][j]=blackchess;
		   }
	   }
	}

    // 画出棋盘和棋子
	// 0:没有棋子
	// 1:白棋
	//-1:黑棋
	public void DrawBoard(Graphics g) 
	{ 
       	//Graphics g = i.getGraphics();
		int margin =(chessspace-chessradii)/2; 
		//System.out.println(margin);
        g.setColor(0,0,0); 

		//画棋盘
 	    
		//画直线
 		for(int i=0;i<19;i++)
 		{
 		  	g.drawLine(left,i*chessspace+top,linespace+left,i*chessspace+top);
 		}
 		
 		//画竖线
 		for(int j=0;j<19;j++)
 		{
 		  	g.drawLine(j*chessspace+left,top,j*chessspace+left,linespace+top);
 		}

		//g.setColor(255,255,255);
		//g.fillArc(left,top,6,6,0,360);
        
		for(int i=0;i<18;i++)
	    {
		   for(int j=0;j<18;j++)
		   {
              if(boardstate[i][j]==blackchess)
			  {   
				  // 画黑子
				  g.setColor(0,0,0);
                  g.fillArc(i*chessspace+margin+left,j*chessspace+margin+top,4,4,0,360); 
			  }
			  else if (boardstate[i][j]==whitechess)
			  {
				  // 画白子
				  g.setColor(255,255,255);
				  g.fillArc(i*chessspace+margin+left,j*chessspace+margin+top,4,4,0,360); 
				  
			  }
			  else
			  {
				  continue;
			  }
		   }
	    }

	
		
	}
 	




 	//检查是否有用户完成五子连线
 	private boolean checkfinished(int x, int y) 
 	{	
 	   int CurrentChessman=boardstate[y][x];
 	   int Count ;
 	   
 	   //检查行是否有五子连线
       Count =0;
       for(int i=Math.max(0,x-4);i<=Math.min(x+4,18);i++)
 	   {
        

 	   	 if (boardstate[y][i]==CurrentChessman)
 	   	 {
 	  	 
 	   	 	Count =Count+1;
			if (Count>=5)
		    {
			  return true;
		    }
 	   	 
 	   	 }
 	   	 else	
		 {
            Count =0;  
		 }
	   	 
 	   }

	 
 	   //检查列是否有五子连线
	   Count =0;
 	   for(int i=Math.max(0,y-4);i<=Math.min(y+4,18);i++)
 	   {
       

 	   	 if (boardstate[i][x]==CurrentChessman)
 	   	 {
 	  	 
 	   	 	Count =Count+1;
			if (Count>=5)
		    {
			  return true;
		    }
 	   	 
 	   	 }
 	   	 else	
		 {
            Count =0;  
		 }
	   	 
 	   }

 	   
 	   
 	   //检查右斜线是否有五子连线

	   Count =0;
 	   for(int i=Math.max(0,x-4),j=Math.max(0,y-4);i<=Math.min(x+4,18)&&j<=Math.min(y+4,18);i++,j++)
 	   {
         
	

 	   	 if (boardstate[j][i]==CurrentChessman)
 	   	 {
 	   	 	
 	   	 	Count =Count+1;
 	   	 	if (Count>=5)
 	   	 	{
 	   	 		return true;
			
	   	 	}
 	   	 }
 	   	 else	
		 {
              Count =0;  
		 }
 	  	
 	   } 

	  
 	   //检查左斜线是否有五子连线
 	   
	   Count =0;
 	   for(int i=Math.max(0,x-4),j=Math.min(y+4,18);i<=Math.min(x+4,18)&&j>=Math.max(0,y-4);i++,j--)
 	   {  
   


 	   	 if (boardstate[j][i]==CurrentChessman)
 	   	 {
 	   	 	
 	   	 	Count =Count+1;
 	   	 	if (Count>=5)
 	   	 	{
 	   	 		return true;
			
	   	 	}
 	   	 }
 	   	 else	
		 {
           Count =0;  
		 }
 	  	   	
 	   } 
	   
	
 	   return false;

	   //检查棋盘是否满了

 	}
 	
 }
 
 	
 	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -