可按Ctrl+D收藏 蚂蚁资源网

蚂蚁资源网

扫雷源码(网页版红包扫雷源码)

  • 时间:2021-02-11 18:14 编辑:张红爽 来源:蚂蚁资源 阅读:115
  • 扫一扫,手机访问
摘要:大家好,今天给大家介绍关于扫雷源码(网页版红包扫雷源码)的相关内容,详细讲解扫雷java源代码,有没有扫雷的源程序,C语言扫雷源代码 不用鼠标 操作 急求!!!等,希望可以帮助到您。
扫雷java源代码,导入java.awt。 *;导入java.awt.Event。 *;导入javax.swing。 *;公共类帧扩展JFrame {JTextField Text; Jlabel NowBomb,Setbomb;嵌体爆炸; //当前矿山,当前广场int rightbomb,restbomb,reastblock; //发现,剩下的矿井,剩下的数字jbutton start = new jbutton(“开始”); jpanel menupamel =新jpanel(); bombpanel =新jpanel();炸弹[] []轰炸顿; jpanel c; borderlayout borderlayout1 = new borderlayout(); gridlayout gridlayout1 = new gridlayout();公共框架(){try {setDefaultCloseoperation(Exit_On_Close); JBInit();} catch(例外例外){例外。 printstacktrace();}}}}}}}}}私有void jbinit()抛出异常{c =(jpanel)getContentPane(); stentle); C.SetBackground(Color.White); menupamel.setbackground(颜色。灰色); C.SetLayout(BorderLayout1);规定(新维度(600,600));可批准(假); blocknum = 144; Bombnum = 10;文本=新jtextfield(“10”,3); NowBomb = New Jlabel(“当前矿山”+“:”+ Bombnum); SetBomb =新JLabel(“设置矿物号”); start.addactionListener(new frame1_start_actionadapter(此)); menupamel.add(setbomb); menupamel.add(文字); menupamel.add(开始); menupamel.add(现在); C.ADD(Menupamel,Java.awt.borderlayout.south); bombpanel.setLayout; gridlayout1.setColumns((int)math.sqrt(blossnum); gridlayout1.setrows((int)math.sqrt(块);轰炸顿=新炸弹[(int)math.sqrt(块)] [(int)math.sqrt (块)]; for(int i = 0; i < (int) Math.sqrt(BlockNum); i++) { for (int j = 0; j < (int) Math.sqrt(BlockNum); j++) { bombButton[i][j] = new Bomb(i, j); //bombButton[i][j].setSize(10, 10); bombButton[i][j].setFont(new Font("", Font.PLAIN, 14));//设置字体大小 bombButton[i][j].setForeground(Color.white); bombButton[i][j].addMouseListener(new Bomb_mouseAdapter(this)); bombButton[i][j].addActionListener(new Bomb_actionAdapter(this)); bombPanel.add(bombButton[i][j]); } } c.add(bombPanel, java.awt.BorderLayout.CENTER); startBomb(); } /* 开始按钮 */ public void start_actionPerformed(ActionEvent e) { int num=Integer.parseInt(text.getText().trim()); if (num > = 5 && num < 50) { BombNum = num; startBomb(); } else if (num < 5) { JOptionPane.showMessageDialog(null, "您设置的地雷数太少了,请重设!", "错误", JOptionPane.ERROR_MESSAGE); num=10; BombNum = num; } else { JOptionPane.showMessageDialog(null, "您设置的地雷数太多了,请重设!", "错误", JOptionPane.ERROR_MESSAGE); num=10; BombNum = num; } } /* 开始,布雷 */ public void startBomb() { nowBomb.setText("当前雷数" + ":" + BombNum); for (int i = 0; i < (int) Math.sqrt(BlockNum); i++) { for (int j = 0; j < (int) Math.sqrt(BlockNum); j++) { bombButton[i][j].isBomb = false; bombButton[i][j].isClicked = false; bombButton[i][j].isRight = false; bombButton[i][j].BombFlag = 0; bombButton[i][j].BombRoundCount = 9; bombButton[i][j].setEnabled(true); bombButton[i][j].setText(""); bombButton[i][j].setFont(new Font("", Font.PLAIN, 14));//设置字体大小 bombButton[i][j].setForeground(Color.BLUE); rightBomb = 0; restBomb = BombNum; restBlock = BlockNum - BombNum; } } for (int i = 0; i < BombNum; ) { int x = (int) (Math.random() * (int) (Math.sqrt(BlockNum) - 1)); int y = (int) (Math.random() * (int) (Math.sqrt(BlockNum) - 1)); if (bombButton[x][y].isBomb != true) { bombButton[x][y].isBomb = true; i++; } } CountRoundBomb(); } /* 计算方块周围雷数 */ public void CountRoundBomb() { for (int i = 0; i < (int) Math.sqrt(BlockNum); i++) { for (int j = 0; j < (int) Math.sqrt(BlockNum); j++) { int count = 0; // 当需要检测的单元格本身无地雷的情况下,统计周围的地雷个数 if (bombButton[i][j].isBomb != true) { for (int x = i - 1; x < i + 2; x++) { for (int y = j - 1; y < j + 2; y++) { if ( (x > = 0)&&(y> = 0)&&(x < ( (int) Math.sqrt(BlockNum))) && (y < ( (int) Math.sqrt(BlockNum)))) { if (bombButton[x][y].isBomb == true) { count++; } } } } bombButton[i][j].BombRoundCount = count; } } } } /* 是否挖完了所有的雷 */ public void isWin() { restBlock = BlockNum - BombNum; for (int i = 0; i < (int) Math.sqrt(BlockNum); i++) { for (int j = 0; j < (int) Math.sqrt(BlockNum); j++) { if (bombButton[i][j].isClicked == true) { restBlock--; } } } if (rightBomb == BombNum || restBlock == 0) { JOptionPane.showMessageDialog(this, "您挖完了所有的雷,您胜利了!", "胜利", JOptionPane.INFORMATION_MESSAGE); startBomb(); } } /** 当选中的位置为空,则翻开周围的地图* */ public void isNull(Bomb ClickedButton) { int i, j; i = ClickedButton.num_x; j = ClickedButton.num_y; for (int x = i - 1; x < i + 2; x++) { for (int y = j - 1; y < j + 2; y++) { if ( ( (x != i) || (y != j)) && (x > = 0)&&(y> = 0)&& (x < ( (int) Math.sqrt(BlockNum))) && (y < ( (int) Math.sqrt(BlockNum)))) { if (bombButton[x][y].isBomb == false && bombButton[x][y].isClicked == false && bombButton[x][y].isRight == false) { turn(bombButton[x][y]); } } } } } /* 翻开 */ public void turn(Bomb ClickedButton) { ClickedButton.setEnabled(false); ClickedButton.isClicked = true; if (ClickedButton.BombRoundCount > 0){clickedbutton.settext +“”);否则{isnULL(ClickedButton);} / *左按钮* /公共void ActionPerformed(ActionEvent e){if((炸弹)e.getsource())。 isclicked == false &&((bomm)e.getsource())。 Isright == false){if((炸弹)e.getsource())。 ISBOMB == FALSE){转((炸弹)e.getsource()))))))))); iswin();} else {for(int i = 0; i < (int) Math.sqrt(BlockNum); i++) { for (int j = 0; j < (int) Math.sqrt(BlockNum); j++) { if (bombButton[i][j].isBomb == true) { bombButton[i][j].setText("b"); } } } ( (Bomb) e.getSource()).setForeground(Color.RED); ( (Bomb) e.getSource()).setFont(new Font("", Font.BOLD, 20)); ( (Bomb) e.getSource()).setText("X"); JOptionPane.showMessageDialog(this, "你踩到地雷了,按确定重来", "踩到地雷", 2); startBomb(); } } } /* 右键点击 */ public void mouseClicked(MouseEvent e) { Bomb bombSource = (Bomb) e.getSource(); boolean right = SwingUtilities.isRightMouseButton(e); if ( (right == true) && (bombSource.isClicked == false)) { bombSource.BombFlag = (bombSource.BombFlag + 1) % 3; if (bombSource.BombFlag == 1) { if (restBomb > 0){bombsource.setforeground(color.red); bombsource.settext(“f”); bombsource.ism = true; restbomb - ;} else {bombsource.bombflag = 0;}}否则if(bombsource.bombflag == 2){restbomb ++; bombsource.settext(“q”); bombsource .sright = false; else {bombsource.settext(“”);}如果(bombsource.bombomb == true){if(bombsource.bombflag == 1){rightbomb ++;} else(bombsource.bombflag = = 2){rightBomb - ;;}} novebomb.settext(“当前矿山”+“:”+ restbomb); Iswin();}}}}}}}}}}}}}}}}}}}}}公共静态void main(字符串[] args){帧框架=新帧();帧。 SERVISIBLE(TRUE);}}类FRAME1_START_ACTIONADAPTET实施ActionListener {私有框架Adaptee; Frame1_start_actionAdapter(帧适配者){this.adaptee =适配者;}公共无效的actionPerformed(ActionEvent的发送){adaptee.start_actionPerformed(E);}} //// //////////////// ////////////////////////// block int bombroundcount; //围绕着贻贝布尔isbomb; //是射线布尔·否决的; //你点击了INT BOMBFLAG; //雷标b le le s ;; {{num_x = x; num_y = y; Bombflag = 0; bombroundcount = 9; isbomb = false; isclicked = false; IsRight = false;}}} Bamb_ActionAdapter实现ActionListener {私有框架Adaptee; Bomb_ActionAdapter(Frame Adaptee){this.adaptee = Adaptee;}公共void actionPerformed(ActionEvent e){Adaptee.ActionPerformed(e);}}}}} Bamb_Mouseadapter延伸MouseAdapter {私人框架Adaptee; Bomb_Mouseadapter(Frame Adapeee){This.Adaptee = Adaptee;}公共空白Mouseclicked(MouseEvent e){Adaptee.mouseclicked(e);}}
有没有扫雷的源程序,Windos Mineslice的正常版本是解释Bray和Mine-Minesweepping计划。当我有一个矿山程序时,现在有很多来源下载,我不知道他们的算法是如何,但我想念我。该算法应该是更清晰且简单的。让我们谈谈我的矿山资料。首先,我们随机地把雷声放在矿井里,没有雷声,它将显示一个数字,表明它周围有几个雷鸣,这个实施如何?我们可以将整个矿区视为二维阵列A [i,j],例如射线:11 12 13 14 15 16 18 21 23 23 23 22 25 26 23 32 32 33 34 32 32 37 38 41 41 42 43 44 45 46 47 48 51 52 53 54 55 56 57 58我想知道围绕a [34]的几个雷,只检测[23],a [24],a [25] a [33], A [35] A [43],A [44],A [45] W留下八个雷声放在雷声中,仔细观察他们的数学关系。摘要是:雷鸣数的[i,j]是一个[i-1,j-1],a [i-1,j],a [i-1,j + 1] a [i, J-1],[I,J + 1] A [I + 1,J-1],[I + 1,J],[I + 1,J + 1](如果边界被超出判断)确定这个等级。 MineSweeping进程将自动启动一个没有雷声的无排灰区域。如果a [3,4]是1矿井矿,[2,3]已被标记为矿,则[24],a [25],a [33],a [35],a [43], [44],将部署A [45],以及无法形容的矿区。这也是实施的关键。我们可以将数组的元素设置为类对象,因此Windos MineSweeper正常版本的类与Minger和Min CL相结合耳朵。
C语言扫雷源代码 不用鼠标 操作 急求!!!,#include #include #include #include #define n 3struct ine_box {char类型; //' *'代表我的,n由mines包围(n = 0-8)char bmarked; //标有炭束缚; //打开} mine_array [n] [n]; int currentrow,currentcol; //记录当前光标INT OpenedBlank = 0的位置; //将打开的晶格号/ *记录到屏幕上的指定位置的坐标* / void gotoxy(int x,int y){console_screen_buffer_info csbiinfo;处理hconsoleout; hconsoleout = getstdandle(std_output_handle); GetConsoloLoleCebufferInfo(HConsoleout,&CSBIInfo); csbiinfo.dwcursorposition.x = x; csbiinfo.dwcursorposition.y = y; setConsoleCurreposition(hconsoleout,csbiinfo.dwcursorposition);} //显示convoid Printbox的网格的帐篷(struct mine_box mb){//晶格未打开,如果(mb.boped == 0 && mb.bmarked == 0)Printf(“□”); //格子花呢披肩是标记的,如果(mb.bmarked = = 1)printf(“√”); //格子花呢标记为两次(MB.Bmarked == 2)Printf(“?”); //格子是打开的,显示格子elseswitch(mb.type)的内容{//格子有矿井案例'*':printf(“⊕”);打破; //格子没有矿山,没有矿井案例0:printf(“”);打破;案例1:printf(“1”);打破;案例2:Printf(“2”);打破;案例3:Printf(“3”);打破;案例4:Printf(“4”);打破;案例5:Printf(“5”)突破;案例6:Printf(“6”);打破;案例7:Printf(“7”);打破;案例8:Printf(“8”);打破;}} //将光标移动到行CoID MoveTo(int行,int co){currentrow =行; currentrow =行;currencol =金额; CurrentRow * 2 + 1);} //刷新屏幕VID刷新刷新(int状态){int i,j; gotoxy(0,0); printf(“┏┏”); for(i = 1; i 0){currentrow - ; moveto(currentrow,currencol);}}}} void movedown){if(currentrow 0){currencol - ; moveto(currentrow,currencol);}} void movertight(){}(currencol < N; i++)printf("┳━");printf("┓\n");for(i = 0; i < N; i++) {printf("┃");for(j = 0; j < N; j++) {if(state == -1 && mine_array[i][j].bMarked == 1 && mine_array[i][j].type != '*') {printf("¤"); // 标记错了地雷continue; } if(state != 0) { // 游戏结束,将所有的盒子掀开显示其中内容 mine_array[i][j].bOpened = 1;mine_array[i][j].bMarked = 0;}printBox(mine_array[i][j]);printf("┃");}if(i < N-1) {printf("\n┣");for(j = 1; j < N; j++) {printf("━╋");}printf("━┫\n");}else {printf("\n┗");for(j = 1; j < N; j++) {printf("━┻");}printf("━┛\n");}}printf("按键指南:A左移,D右移,W上移,S下移,X翻开,C标记,Q退出\n");}void MoveUp(){if(CurrentRow > n * n){printf(“数字overrober \ n”)return -1; memset((void *)mine_array,0,n * n * sizeof(struct mine_box)); //随机设置NUM灯SRAND(NULL)); for(i = 0; i < N-1) {CurrentRow ++;MoveTo(CurrentRow, CurrentCol);;}}void MoveLeft(){if(CurrentCol > = 0 && j> = 0 && i
责任编辑(张红爽

以上就是关于**扫雷源码,网页版红包扫雷源码**的全部内容,了解更多请关注蚂蚁资源网。
  • 全部评论(3)
  • mmnn
  • java 扫雷源代码,import java.awt.BorderLayout;import java.awt.Container;import java.awt.Font;import java.awt.GridLayout;import java.awt.Insets;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.swing.JMenuItem;import javax.swing.JPanel;import javax.swing.Timer;public class ScanLei1 extends JFrame implements ActionListener{private static final long serialVersionUID = 1L;private Container contentPane;private JButton btn;private JButton[] btns;private JLabel b1;private JLabel b2;private JLabel b3;private Timer timer;private int row=9;private int col=9;private int bon=10;private int[][] a;private int b;private int[] a1;private JPanel p,p1,p2,p3;public ScanLei1(String title){62616964757a686964616fe58685e5aeb931333330323261super(title);contentPane=getContentPane();setSize(297,377);this.setBounds(400, 100, 400, 500);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);timer =new Timer(1000,(ActionListener) this);a = new int[row+2][col+2];initGUI();}public void initGUI(){ p3=new JPanel();b=bon;JMenuBar menuBar=new JMenuBar();JMenu menu1=new JMenu("游戏");JMenu menu2=new JMenu("帮助");JMenuItem mi1=new JMenuItem("初级");JMenuItem mi2 = new JMenuItem("中级");JMenuItem mi3 =new JMenuItem("高级");mi1.addActionListener(this);menu1.add(mi1);mi2.addActionListener(this);menu1.add(mi2);mi3.addActionListener(this);menu1.add(mi3);menuBar.add(menu1);menuBar.add(menu2);p3.add(menuBar);b1=new JLabel(bon+"");a1=new int[bon];btn =new JButton("开始");btn.addActionListener(this);b2=new JLabel("0");b3=new JLabel("");btns=new JButton[row*col]; p=new JPanel();p.setLayout(new BorderLayout());contentPane.add(p);p.add(p3,BorderLayout.NORTH);//combo=new JComboBox(new Object[]{"初级","中级","高级"} );//加监听/*combo.addItemListener(new ItemListener(){}});*/ p1=new JPanel();//在那个位置//(( FlowLayout)p1.getLayout()).setAlignment( FlowLayout.RIGHT);p1.add(b1);p1.add(btn);p1.add(b2);p1.add(b3);p.add(p3,BorderLayout.NORTH);p.add(p1,BorderLayout.CENTER); p2=new JPanel();p2.setLayout(new GridLayout(row,col,0,0));for(int i=0;i<row*col;i++){btns[i]=new JButton("");btns[i].setMargin(new Insets(0,0,0,0));btns[i].setFont(new Font(null,Font.BOLD,25));btns[i].addActionListener(this);btns[i].addMouseListener(new NormoreMouseEvent());p2.add(btns[i]);}contentPane.add(p,BorderLayout.NORTH);contentPane.add(p2,BorderLayout.CENTER);}public void go(){setVisible(true);}public static void main(String[] args){new ScanLei1("扫雷").go();}public void out(int[][] a,JButton[] btns,ActionEvent e,int i,int x,int y){ int p=1; if(a[x][y]==0){ a[x][y]=10; btns[i].setEnabled(false);//33 for(int l=y-1;l<=y+1;l++){ int m=x-1-1; int n=l-1; p=1; System.out.println(a[1][2]); if(n>-1&&n<col&&m>-1&&m<row) { for(int q=0;q<row&&p==1;q++){//col-->row; if(((n+col*q)>=(m*col))&&((n+col*q)<(m+1)*col)){ if(a[x-1][l]!=0&&a[x-1][l]!=10){ btns[n+col*q].setText(a[x-1][l]+""); a[x-1][l]=10; btns[n+col*q].setEnabled(false); } else if(a[x-1][l]==0){ //a[x-1][l]=10; btns[n+col*q].setEnabled(false); out(a,btns,e,n+col*q,x-1,l); ////55//// a[x-1][l]=10; btns[n+col*q].setEnabled(false); } p=0; } } } p=1; m=x; if(n>-1&&n<col&&m>-1&&m<col) { for(int q=0;q<row&&p==1;q++){ if(((n+col*q)>=(m*col))&&((n+col*q)<(m+1)*col)){ if(a[x+1][l]!=0&&a[x+1][l]!=10){ btns[n+col*q].setText(a[x+1][l]+""); a[x+1][l]=10; btns[n+col*q].setEnabled(false); } else if(a[x+1][l]==0){ out(a,btns,e,n+col*q,x+1,l);///55//// a[x+1][l]=10; btns[n+col*q].setEnabled(false); } p=0; } } } } int m=x-1; int n=y-1-1; p=1; if(n>-1&&n<col&&m>-1&&m<col){ for(int q=0;q<row&&p==1;q++){ if(((n+col*q)>=(m*col))&&((n+col*q)<(m+1)*col)){ if(a[x][y-1]!=0&&a[x][y-1]!=10){ btns[n+col*q].setText(a[x][y-1]+""); a[x][y-1]=10; btns[n+col*q].setEnabled(false); } else if(a[x][y-1]==0){out(a,btns,e,n+col*q,x,y-1); a[x][y-1]=10; btns[n+col*q].setEnabled(false); } p=0; } }} p=1; m=x-1; n=y+1-1; if(n>-1&&n<col&&m>-1&&m<col) { for(int q=0;q<row&&p==1;q++){ if(((n+col*q)>=(m*col))&&((n+col*q)<(m+1)*col)){ if(a[x][y+1]!=0&&a[x][y+1]!=10){ btns[n+col*q].setText(a[x][y+1]+""); a[x][y+1]=10; btns[n+col*q].setEnabled(false); } else if(a[x][y+1]==0){ out(a,btns,e,n+col*q,x,y+1); a[x][y+1]=10; btns[n+col*q].setEnabled(false); } p=0; } } }}}public void actionPerformed(ActionEvent e) {if(e.getActionCommand()=="初级"){row=9;col=9;bon=10;a1=new int[bon];b=bon;//setSize(297,377);a = new int[row+2][col+2];this.remove(p2);timer.stop();b1.setText("10");b2.setText("0");b3.setText("");btns=new JButton[row*col]; p2=new JPanel();p2.setLayout(new GridLayout(row,col,0,0));for(int i=0;i<row*col;i++){btns[i]=new JButton(" ");btns[i].setMargin(new Insets(0,0,0,0));btns[i].setFont(new Font(null,Font.BOLD,25));btns[i].addActionListener(this);btns[i].addMouseListener(new NormoreMouseEvent());p2.add(btns[i]);}contentPane.add(p2,BorderLayout.CENTER);//setSize(297,377);this.pack();for(int i=0;i<row*col;i++){btns[i].setText(" ");btns[i].setEnabled(true);}for(int i=0;i<row+2;i++){for(int j=0;j<col+2;j++){a[i][j]=0;}}}else if(e.getActionCommand()=="中级"){row=16;col=16;bon=40;//setSize(33*col,33*row+80);a1=new int[bon];a = new int[row+2][col+2]; b=bon;this.remove(p2);timer.stop();b1.setText("40");b2.setText("0");b3.setText("");btns=new JButton[row*col]; p2=new JPanel();p2.setLayout(new GridLayout(row,col,0,0));for(int i=0;i<row*col;i++){btns[i]=new JButton(" ");btns[i].setMargin(new Insets(0,0,0,0));btns[i].setFont(new Font(null,Font.BOLD,25));btns[i].addActionListener(this);btns[i].addMouseListener(new NormoreMouseEvent());p2.add(btns[i]);}contentPane.add(p2,BorderLayout.CENTER);this.pack();//setSize(33*col,33*row+80);for(int i=0;i<row*col;i++){btns[i].setText("");btns[i].setEnabled(true);}for(int i=0;i<row+2;i++){for(int j=0;j<col+2;j++){a[i][j]=0;}}}else if(e.getActionCommand()=="高级"){row=16;col=32;bon=99;setSize(33*col,33*row+80);a1=new int[bon];a = new int[row+2][col+2];b=bon;this.remove(p2);timer.stop();b1.setText("99");b2.setText("0");b3.setText("");btns=new JButton[row*col]; p2=new JPanel();p2.setLayout(new GridLayout(row,col,0,0));for(int i=0;i<row*col;i++){btns[i]=new JButton(" ");btns[i].setMargin(new Insets(0,0,0,0));btns[i].setFont(new Font(null,Font.BOLD,25));btns[i].addActionListener(this);btns[i].addMouseListener(new NormoreMouseEvent());p2.add(btns[i]);}contentPane.add(p2,BorderLayout.CENTER);//setSize(33*col,33*row+80);this.pack();for(int i=0;i<row*col;i++){btns[i].setText("");btns[i].setEnabled(true);}for(int i=0;i<row+2;i++){for(int j=0;j<col+2;j++){a[i][j]=0;}}}if(e.getSource()==btn){timer.start();b=bon;b3.setText("");//System.out.println(bon);//清空for(int i=0;i<row*col;i++){btns[i].setText("");btns[i].setEnabled(true);}for(int i=0;i<row+2;i++){for(int j=0;j<col+2;j++){a[i][j]=0;}}//产生随机数for(int i=0;i<bon;i++){ int p=1;int m=(int)(Math.random()*row*col);while(p==1){ int l=1; int j;for( j=0;j<i&&l==1;j++){ if(a1[j]==m){ m=(int)(Math.random()*row*col); l=0; }}if(j==i){a1[i]=m;p=0;}}}b1.setText(bon+"");b2.setText("0");//布雷 for(int i=0;i<bon;i++){ int x=(a1[i]/col+1); int y=(a1[i]%col+1);a[x][y]=100; } for(int i=0;i<row+2;i++){ for(int j=0;j<col+2;j++){ if(i==0||j==0||i==row+1||j==col+1){ a[i][j]=0; } } } for(int i=1;i<=row;i++){ for(int j=1;j<=col;j++){ if(a[i][j]!=100){ for(int l=j-1;l<=j+1;l++){ if(a[i-1][l]==100){ a[i][j]++; } if(a[i+1][l]==100){ a[i][j]++; } } if(a[i][j-1]==100){ a[i][j]++; } if(a[i][j+1]==100){ a[i][j]++; } } } } }if(e.getSource()==timer){ String time=b2.getText().trim();int t=Integer.parseInt(time);//System.out.println(t);if(t>=600){timer.stop();}else{t++;b2.setText(t+"");}}for(int i=0;i<col*row;i++){ if(btns[i].getText()!="★") { int x=i/col+1; int y=i%col+1; if(e.getSource()==btns[i]&&a[x][y]==100){ btns[i].setText("★"); btns[i].setEnabled(false); a[x][y]=10; for(int k=0;k<col*row;k++){ int m1=k/col+1; int n1=k%col+1; if(a[m1][n1]!=10&&btns[k].getText()=="★"){ btns[k].setText("*o*"); } } for(int j=0;j<col*row;j++){ int m=j/col+1; int n=j%col+1; if(a[m][n]==100){ btns[j].setText("★"); btns[j].setEnabled(false); b3.setText("你输了 !!"); } btns[j].setEnabled(false); a[m][n]=10; } timer.stop(); } else if(e.getSource()==btns[i]){ if(a[x][y]==0){ out(a,btns,e,i,x,y); a[x][y]=10; btns[i].setEnabled(false); } if(a[x][y]!=0&&a[x][y]!=10){ btns[i].setText(a[x][y]+""); btns[i].setEnabled(false); a[x][y]=10; } } }else if(btns[i].getText()=="★"){ } }}class NormoreMouseEvent extends MouseAdapter{public void mouseClicked(MouseEvent e) {System.out.println(b);for(int i=0;i<col*row;i++){ int x1=i/col+1; int y1=i%col+1;if(e.getSource()==btns[i]&&btns[i].getText()!="★"&&a[x1][y1]!=10){ if(e.getButton()==MouseEvent.BUTTON3){ btns[i].setText("★"); b--; if(b==0){ int flag=0; for(int j=0;j<col*row;j++){ int x=j/col+1; int y=j%col+1; if(a[x][y]==100&&btns[j].getText()=="★"){ flag++; } } if(flag==bon){ timer.stop(); b3.setText("你赢了!"); } } b1.setText(b+""); }}else if(e.getSource()==btns[i]&&btns[i].getText()=="★"&&a[x1][y1]!=-1){if(e.getButton()==MouseEvent.BUTTON3){ btns[i].setText(""); b++; if(b>bon){ b1.setText(bon+""); } else{ b1.setText(b+""); } btns[i].setEnabled(true);}}}}}}
  • 2021-02-11 18:14:42
  • 苹果cms
  • 看看这个如何!#include #include #include #define LEFTPRESS 0xff01 #define LEFTCLICK 0xff10 #define LEFTDRAG 0xff19 #define MOUSEMOVE 0xff08 int num[10][10];/*范围*/ int p[10][10];/*统计雷的数组*/ int loop;/*重新来的标志*/ int again=0;/*是否重来的变量*/ int scorenum;/*一开始统计有几个雷*/ char score[3];/*输出一共有几个地雷*/ int Keystate; int MouseExist; int MouseButton; int MouseX; int MouseY; /*鼠标光标形状定义*/ typedef struct { unsigned int shape[32]; char hotx; char hoty; }SHAPE; /*箭头型*/ SHAPE ARROW={ { 0x3fff,0x1fff,0x0fff,0... if(num[1][9]==10) x++; { _AX=0x02,75,100+i*20-8; #define LEFTPRESS 0xff01 #define LEFTCLICK 0xff10 #define LEFTDRAG 0xff19 #define MOUSEMOVE 0xff08 int num[10][10]; int MouseY,0x07ff, 0x003f,0x00ff,0x007f,0x10ff,0x6000,0; geninterrupt(0x33); fillellipse(290;*是地雷的就显示出来*/, 0x0000;10; // } else if(i==0&&j==9) { if(num[0][8]==10) x++; int p[10][10];*鼠标光标隐藏*/,j;j< for(i=100; setcolor(1),0x0300; int MouseExist, 0x0600; outtextxy(210,2); fillellipse(200+j*20;j+=20) bar(j-8; fillellipse(295, 0x03ff, 0x30ff;/,scorenum); } void MouseSetXY(int x; setfillstyle(SOLID_FILL,0x7000,75; setcolor(YELLOW);*鼠标光标显示*/i< setcolor(0); randomize(); { _CX=x;j< char hoty;*左键按下*/ bar(190,i+8,10; bar(287,70; if(num[1][1]==10) x++,0x7c00;*用10代表地雷算了*/ geninterrupt(0x33), 0x7f80; { int i;/ scorenum=100-scorenum; #include < if(num[i][j]==10) scorenum++,int j)/ fillellipse(285; if(num[9][1]==10) x++; } } int tongji(int i;300; if(i==0&&j==0) { if(num[0][1]==10) x++; char score[3]; int MouseButton; int loop;*10代表地雷*/10;*游戏结束画面*/ { int x=0,0x7e00;10; settextstyle(0;*输出一共有几个地雷*/*计算有几个雷*/,0x0180 },0x4600看看这个如何;*统计雷的数组*/*得到当前位置*/,81).h&gt,0x7f00,290);i&lt,0x00ff,0),0x01ff; setfillstyle(SOLID_FILL;10;%d"dos; MouseX=180,0x7e00;*鼠标光标掩示*/,80: cleardevice(),YELLOW),0xf87f; void MouseOn() { _AX=0x01; bar(200+j*20-8;stdlib; for(i=0;// } gameove()/ geninterrupt(0x33); setfillstyle(SOLID_FILL,score),200+j*20+8,7);graphics;*鼠标光标形状定义*/ { _AX=0x03,RED),j+8,75; char hotx; int scorenum; setfillstyle(SOLID_FILL;*画脸*/*游戏开始画面*// MouseY=30; if(num[1][8]==10) x++; MouseX=_CX;/.h> void MouseOff()/ /,7),10);/ setcolor(7);,0x01ff;*一开始统计有几个雷*/i+=20)/j++) if(num[i][j]==10)/ typedef struct { unsigned int shape[32]; scorenum=0; geninterrupt(0x33),2,2); if(num[8][1]==10) x++; geninterrupt(0x33); { _AX=0x03,0xf87f; }SHAPE; loop,8);j for(i=0;*画格子*//,2); } else if(i==9&&j==9) { if(num[9][8]==10) x++,j,0; MouseY=_DX,0x1fff,2;400,100+i*20+8),0x7c00;/ _DX=y;*箭头型*/, };*是否重来的变量*/,100+i*20,0x0fff; setfillstyle(SOLID_FILL.h&gt, 0,390; SHAPE ARROW={ { 0x3fff; } sprintf(score;*重新来的标志*/,int y)/ if(num[1][0]==10) x++; { int i,0x0300; int Keystate;i++) for(j=0,0xfc3f; return(_BX&1)!#include { num[i][j]=random(7)+10,293,&quot,30); MouseSetXY(180; _AX=0x04;i&lt,i-8); } else if(i==9&&j==0) { if(num[8][0]==10) x++; } int LeftPress()/, 0x7800; int again=0; { setfillstyle(SOLID_FILL; #include &lt,7; / setcolor(0); for(j=200; } begain()/ } void MouseGetXY()/,0); MouseOn(),0x7c00; } /i++) for(j=0;*范围*/,60; int MouseX;*为了后面判断胜利*/
  • 2021-02-11 18:14:42
  • dfgj
  • import java.awt.*;import javax.swing.*;import java.util.Random;import java.awt.event.*;class Min extends JPanel //雷的类{ //备注:鼠标的左键 = 1;右键 = 3;中键 = 2 private int flag = 0,statu = 0; //定义雷的属性 0:没有打开 1:打开 2:标示为雷 3:不确定 //flag = 0 不是雷 ; flag = 1是雷 private int but,count = 0; //but:哪一个鼠标键被按下去了 count:这个区域周围有多少个雷 private int mx = 0,my = 0,mw = 10; //定义雷的坐标和宽度 public Min() //构造函数 { statu = 0; } public Min(int f,int x,int y,int w) //构造函数 { flag = f; mx = x; my = y; mw = w; } public int getFlag(){return flag;} public int getStatu(){return statu;} public int getMx(){return mx;} public int getMy(){return my;} public int getMw(){return mw;} public int getCount(){return count;} public void setFlag(int f){flag = f;} public void setCount(int c){count = c;} public void setData(int f,int x,int y,int w,int s) //传递值 { flag = f; mx = (x-1)*w; my = (y-1)*w; mw = w-1; statu = s; } //根据你点击鼠标的不同来改变雷的属性 public int sendKey(int key) { //返回值,如果游戏结束则返回-1 int rtn = 1; if(key == 3) { switch(statu) { case 1: break; case 2: statu = 3; break; case 3: statu = 0; break; case 0: statu = 2; break; } rtn = 1; } if(key == 1 && statu == 0) { switch(flag) { case 0: statu = 1; rtn = 2; break; case 1: statu = 1; rtn = -1; break; } } return rtn; }}class DrawPanel extends JPanel{ private int i,j; private int f = 0; //if f = 1 then game over ,if f =2 then win private int chx = 0,chy = 0; //专门记录坐标x,y的值 private int msum = 6,ksum = 0; //msum:雷的个数,ksum:标示雷的个数 private int bx = 10,by = 10,bw = 40; //bx,by:棋盘的大小,bw:棋子的大小 public Min board[][] = { {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},{new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()}, }; // 画坐标为ax,ay区域的雷的状态 public void draw(Graphics g,int ax,int ay) { int x,y,w; // 坐标x,y;和宽度:w int s,c,flag; //状态;雷的个数; int cx = bw/2 - 4; int cy = bw/2 + 4; x = board[ax][ay].getMx(); y = board[ax][ay].getMy(); w = board[ax][ay].getMw(); s = board[ax][ay].getStatu(); c = board[ax][ay].getCount(); flag= board[ax][ay].getFlag(); switch(s) { case 0: //没有打开状态 { g.setColor(Color.black); g.fillRect(x,y,w,w); break; } case 1: //打开状态 { g.setColor(Color.blue); g.fillRect(x,y,w,w); if(c != 0 && flag == 0) //此处没有雷 { g.setColor(Color.red); g.drawString(String.valueOf(c),x + cx,y + cy); } if(flag == 1) //此处有雷 { g.setColor(Color.red); g.fillRect(x,y,w,w); g.setColor(Color.blue); g.drawString(" 雷",x + cx,y + cy);} break; } case 2: //标雷状态 { g.setColor(Color.green); g.fillRect(x,y,w,w); g.setColor(Color.blue); g.drawString(" 旗",x + cx,y + cy); break; } case 3: //不确定状态 { g.setColor(Color.black); g.fillRect(x,y,w,w); g.setColor(Color.red); g.drawString("?",x + cx,y + cy); break; } default: break; } } // 没有图形器的绘图函数:画出坐标ax,ay的雷的状态和图形 public void draw(int ax,int ay) { Graphics g; g = this.getGraphics(); draw(g,ax,ay); } //打开周围没有雷的地方,并且绘画所在区域点击左键触发 public int openNoMin(int ax,int ay) { int i,j; if(ax<1||ay<1||ax>bx||ay>by) return 0; //鼠标点击的区域出界了 if(board[ax][ay].getStatu() != 0) return 0; //如果此区域打开了,返回 board[ax][ay].sendKey(1); //如果返回值等于-1,就说明游戏结束 draw(ax,ay); if(board[ax][ay].getFlag() == 1) //如果游戏结束,把所有的雷都显示出来 { for(i = 1;i<=bx;i++) { for(j = 1;j <= by;j++) { if(board[i][j].getFlag() == 1) { board[i][j].sendKey(1); draw(i,j); } } } return -1; } //如果游戏没有结束 if(board[ax][ay].getCount() > 0) { ksum ++; return 1; //周围有雷,就不用打开周围地区 } if(board[ax][ay].getCount() == 0 && board[ax][ay].getFlag() == 0) //周围没有雷,打开周围地区,直到有雷的地区 { openNoMin(ax-1,ay-1);openNoMin(ax,ay-1);openNoMin(ax+1,ay-1); openNoMin(ax-1,ay ); openNoMin(ax+1,ay ); openNoMin(ax-1,ay+1);openNoMin(ax,ay+1);openNoMin(ax+1,ay+1); } ksum ++; return 1; } //计算坐标x,y的周围雷的个数 public int getCount(int ai,int aj) { int sum = 0; if(board[ai][aj].getFlag() == 1) { return sum; } if(ai>1&&aj>1&&ai<bx&&aj<by) { sum = board[ai-1][aj-1].getFlag()+ board[ai][aj-1].getFlag()+ board[ai+1][aj-1].getFlag()+ board[ai-1][aj ].getFlag()+ board[ai+1][aj ].getFlag()+ board[ai-1][aj+1].getFlag()+ board[ai][aj+1].getFlag()+ board[ai+1][aj+1].getFlag(); } if(ai==1&&aj==1) { sum = board[ai+1][aj ].getFlag()+ board[ai][aj+1].getFlag()+ board[ai+1][aj+1].getFlag(); } if(ai==1&&aj==by) { sum = board[ai][aj-1].getFlag()+ board[ai+1][aj-1].getFlag()+ board[ai+1][aj ].getFlag(); } if(ai==bx&&aj==1) { sum = board[ai-1][aj ].getFlag()+ board[ai-1][aj+1].getFlag()+ board[ai][aj+1].getFlag(); } if(ai==bx&&aj==by) { sum = board[ai-1][aj-1].getFlag()+ board[ai][aj-1].getFlag()+ board[ai-1][aj ].getFlag(); } if(ai==1&&aj>1&&aj<by) { sum = board[ai][aj-1].getFlag()+ board[ai+1][aj-1].getFlag()+ board[ai+1][aj ].getFlag()+ board[ai][aj+1].getFlag()+ board[ai+1][aj+1].getFlag();} if(ai==bx&&aj>1&&aj<by) { sum = board[ai-1][aj-1].getFlag()+ board[ai][aj-1].getFlag()+ board[ai-1][aj ].getFlag()+ board[ai-1][aj+1].getFlag()+ board[ai][aj+1].getFlag(); } if(ai>1&&ai<bx&&aj==1) { sum = board[ai-1][aj ].getFlag()+ board[ai+1][aj ].getFlag()+ board[ai-1][aj+1].getFlag()+ board[ai][aj+1].getFlag()+ board[ai+1][aj+1].getFlag(); } if(ai>1&&ai<bx&&aj==by) { sum = board[ai-1][aj-1].getFlag()+ board[ai][aj-1].getFlag()+ board[ai+1][aj-1].getFlag()+ board[ai-1][aj ].getFlag()+ board[ai+1][aj ].getFlag(); } return sum; } // 传入参数:几列,几行,宽度,雷数 public void initMin(int ax,int ay,int aw,int as) { int k = 1; //表明产生的第几个雷 Random r; //随机数 f = 0; //f=0表示游戏还没有结束 ksum = 0; bx = ax; by = ay; bw = aw; msum = as; r = new Random(); //初始化底盘的值 for(i = 1;i <= bx;i++) { for(j=1;j<=by;j++) { board[i][j].setData(0,i,j,bw,0); } } // 随机产生雷 while(k <= msum) { i = r.nextInt(bx)+1; j = r.nextInt(by)+1; if(board[i][j].getFlag() != 1) { board[i][j].setFlag(1); k++; } } // 非雷区的周围有几个雷,初始化其值 for(i = 1;i <= bx;i++) { for(j=1;j<=by;j++) { board[i][j].setCount(getCount(i,j)); } } setBackground(Color.white); repaint(); } // 构造函数 public DrawPanel(int ax,int ay,int aw,int as) { initMin(ax,ay,aw,as); addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent me) { int r; if(f != 0) return; //如果游戏结束,返回 chx = me.getX(); chy = me.getY(); if(me.getButton() != 1) { board[chx/bw+1][chy/bw+1].sendKey(me.getButton()); draw(chx/bw+1,chy/bw+1); } else if(me.getButton() == 1) { if(openNoMin(chx/bw+1,chy/bw+1) == -1) { f = 1; repaint(); } else if ( ksum + msum == bx*by ) { f = 2; repaint(); } } } } ); } // 重画所有的图形,包括一些修饰的图形 public void paint(Graphics g) { int x,y,w; int s; int cx = bw/2 - 4; int cy = bw/2 + 4; g.clearRect(0,0,600,600); for(i=1;i<=bx;i++) { for(j=1;j<=by;j++) { draw(g,i,j); } } if(f == 1) { Font f = new Font("11",1,70); Font fo = g.getFont(); g.setColor(Color.white); g.setFont(f); //g.setSize(); g.drawString("Game Over",0,200); g.setFont(fo); } if( f == 2 ) { Font f = new Font("11",1,70); Font fo = g.getFont(); g.setColor(Color.white);g.setFont(f); //g.setSize(); g.drawString("You win!",0,200); g.setFont(fo); } }};// 主类和程序的入口public class Mine extends JFrame implements ActionListener{ Container cp = getContentPane(); JButton bt = new JButton("开局"); Label l1 = new Label("列:"); Label l2 = new Label("行:"); Label l3 = new Label("宽度:"); Label l4 = new Label("雷的个数:"); TextField tf1 = new TextField("10",2); //列 TextField tf2 = new TextField("10",2); //行 TextField tf3 = new TextField("40",2); //宽度 TextField tf4 = new TextField("15",2); //雷的个数 int x=10,y=10,w=40,sum=15; DrawPanel dp = new DrawPanel(x,y,w,sum); public Mine() { setBackground(Color.white); cp.setLayout(null); cp.add(dp); cp.add(bt); cp.add(tf1); cp.add(tf2); cp.add(tf3); cp.add(tf4); cp.add(l1); cp.add(l2); cp.add(l3); cp.add(l4); l1.setBounds(20 ,10,20,20); tf1.setBounds(40,10,20,20); l2.setBounds(70,10,20,20); tf2.setBounds(90,10,20,20); l3.setBounds(120,10,40,20); tf3.setBounds(160,10,20,20); l4.setBounds(190,10,60,20); tf4.setBounds(250,10,20,20); bt.setBounds(300,10,80,20); dp.setBounds(20,40,x*w,y*w); setResizable(false); setSize(x*w+40,y*w+80); setTitle(" 扫雷"); show(); bt.addActionListener(this); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) {System.exit(0);} } ); } public void actionPerformed(ActionEvent e) { if(e.getSource() == bt) { //x = Integer.parseInt(tf1.getText()); //y = Integer.parseInt(tf2.getText()); //w = Integer.parseInt(tf3.getText()); sum = Integer.parseInt(tf4.getText()); setSize(x*w+40,y*w+80); dp.setBounds(20,40,x*w,y*w); show(); dp.initMin(x,y,w,sum); } } public static void main(String args[]) { new Mine(); }};
  • 2021-02-20 09:55:01
最新发布的资讯信息
【简历/资料|内地女明星】 殷茹基本资料( YR个人简历介绍)(2020-12-06 15:19)
【简历/资料|内地女明星】 曹菁基本资料( CJ个人简历介绍)(2020-12-06 15:18)
【简历/资料|内地女明星】 王安妮基本资料( WAN个人简历介绍)(2020-12-06 15:18)
【简历/资料|内地女明星】 白琼基本资料( BQ个人简历介绍)(2020-12-06 15:17)
【简历/资料|内地女明星】 王世霞基本资料( WSX个人简历介绍)(2020-12-06 15:17)
【简历/资料|内地女明星】 宋煜基本资料( SY个人简历介绍)(2020-12-06 15:16)
【简历/资料|内地女明星】 钱增基本资料( QZ个人简历介绍)(2020-12-06 15:16)
【简历/资料|内地女明星】 胡晓黎基本资料( HXL个人简历介绍)(2020-12-06 15:15)
【简历/资料|内地女明星】 李佳慧基本资料( LJH个人简历介绍)(2020-12-06 15:15)
【简历/资料|内地女明星】 张洛嘉基本资料( ZLJ个人简历介绍)(2020-12-06 15:14)
联系客服
网站客服 联系客服
手机版

扫一扫进手机版
返回顶部