JFrame
JavaBean类JFrame 名称 = new JFrame();
名称.setSize(宽(px),高(px))
名称.setVisible(布尔值)
名称.setTitle(String)
名称.setAlwaysOnTop(布尔值)
名称.setLocationRelativeTo(null)
名称.setDefaultCloseOperation(number)
名称.setLayout(null)
名称.setgetContentPane().add(组件名称)
窗口名称.getContentPane().removeAll()
窗口名称.getContentPane().repaint()
package smulll.ui;
import javax.swing.*;
public class GameJFrame extends JFrame {
//跟游戏相关的界面
public GameJFrame (){
this.setSize(603,680);
this.setVisible(true);
}
}
package smulll.ui;
import javax.swing.*;
public class LoginJFrame extends JFrame {
//跟登录相关的界面
public LoginJFrame (){
this.setSize(488,430);
this.setVisible(true);
}
}
package smulll.ui;
import javax.swing.*;
public class RegisterFrame extends JFrame {
//跟注册相关的代码
public RegisterFrame (){
this.setSize(488,500);
this.setVisible(true);
}
}
窗口名称.setJMenuBar(菜单名称)
JMenuBar 名称 = new JMenuBar()
;名称.add(选项名称)
;JMenu 名称 = new JMenu(String)
;名称.add(条目对象名称)
;JMenuItem 名称 = new JMenuItem()
;package smulll.ui;
import javax.swing.*;
public class GameJFrame extends JFrame {
//跟游戏相关的界面
public GameJFrame() {
//初始化界面
initJFrame();
//初始化菜单
initJFrameBar();
this.setVisible(true);
}
private void initJFrame() {
this.setSize(603, 680);
//设置页面标题
this.setTitle("拼图游戏 v1.0");
//设置页面在页面顶层
this.setAlwaysOnTop(true);
//页面居中
this.setLocationRelativeTo(null);
//设置关闭模式
this.setDefaultCloseOperation(3);
}
private void initJFrameBar(){
//创建一个菜单
JMenuBar jMenuBar = new JMenuBar();
//创建菜单选项
JMenu functionJMenu = new JMenu("功能");
JMenu aboutJMenu = new JMenu("关于我们");
//创建选项下面的条目对象
JMenuItem replayItem = new JMenuItem("重新游戏");
JMenuItem reloginItem = new JMenuItem("重新登录");
JMenuItem closeItem = new JMenuItem("关闭游戏");
JMenuItem accountItem = new JMenuItem("公众号");
//添加到项目之下
functionJMenu.add(replayItem);
functionJMenu.add(reloginItem);
functionJMenu.add(closeItem);
aboutJMenu.add(accountItem);
//添加选项到菜单中
jMenuBar.add(functionJMenu);
jMenuBar.add(aboutJMenu);
//添加菜单
this.setJMenuBar(jMenuBar);
}
}
ImageIcon 名称 = new ImageIcon (文件的完整路径)
JLabel 名称 = new JLabel(图片对象名称)
窗口名称.getContentPane().add(管理容器名称)
图片管理容器名称.setBounds(x轴位置,y轴位置,宽,高)
打乱一维数组中的数据,添加到二维数组中
public static void main(String[] args) {
int[] tempArr = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,0};
Random r = new Random();
for (int i = 0; i < tempArr.length; i++) {
int index = r.nextInt(tempArr.length);
int temp = tempArr[i];
tempArr[i] = tempArr[index];
tempArr[index] = temp;
}
for (int i = 0; i < tempArr.length; i++) {
System.out.print(tempArr[i]+" ");
}
System.out.println();
int[][] data = new int[4][4];
//将一维数组中的数据添加到二维数组中
for (int i = 0; i < tempArr.length; i++) {
data[i/4][i%4] = tempArr[i];
}
//遍历二维数组
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
System.out.print(data[i][j]+" ");
}
System.out.println();
}
private void initData() {
int[] tempArr = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,0};
//打乱图片的顺序
Random r = new Random();
for (int i = 0; i < tempArr.length; i++) {
int index = r.nextInt(tempArr.length);
int temp = tempArr[i];
tempArr[i] = tempArr[index];
tempArr[index] = temp;
}
//把一维数组的数添加到二维数组中
for (int i = 0; i < tempArr.length; i++) {
data[i/4][i%4] = tempArr[i];
}
}
常用的监听事件
KeyListener
MouseListener
ActionListener
JButten 名称 = new JButton(按钮里面显示的文本)
;e.getSource()
鼠标监听机制-MouseListener
Modifier and Type | 方法 | 描述 |
---|---|---|
void | mouseClicked (MouseEvent e) | 在组件上单击(按下并释放)鼠标按钮时调用。 |
void | mouseEntered (MouseEvent e) | 当鼠标进去组件时调用 |
void | mouseExited (MouseEvent e) | 当鼠标退出组件时调用 |
void | mousePressed (MouseEvent e) | 在组件上按下鼠标按钮时调用 |
void | mouseReleased (MouseEvent e) | 在组件上释放鼠标按钮时调用 |
键盘监听机制-KeyListener
Modifier and Type | 方法 | 描述 |
---|---|---|
void | keyPressed (KeyEvent e) | 按下键时调用 |
void | keyReleased (KeyEvent e) | 当键已被释放时调用 |
void | keyTyped (KeyEvent e) | 键入键时调用 |
e.getKeyCode()
.setBorder(new 类名)
BevelBorder
类,控制突起和凹入的边框private void initImage() {
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
int number = data[i][j];
//创建一个图片对象
//创建一个图片管理容器
JLabel jLabel1 = new JLabel(new ImageIcon("project__one\\pintu_game\\David_Tao\\image\\two\\I-‘m-ok_"+number+".jpg"));
//指定图片位置
jLabel1.setBounds(105 * j+83, 105 * i+134, 105, 105);
//给图片加上一个边框
jLabel1.setBorder(new BevelBorder(1));
//把容器添加到界面中
this.getContentPane().add(jLabel1);
//背景图片在后面添加
}
}
}
public void keyPressed(KeyEvent e) {
int code = e.getKeyCode();
if(code==37){
if (y==3){
return;
}
System.out.println("向左移动");
data[x][y] = data[x][y+1];
data[x][y+1] = 0;
y++;
initImage();
} else if (code==38) {
System.out.println("向上移动");
//当方块在最下方时,点击向上按钮会报错
if (x==3){
return;
}
//逻辑:
//把空白方块下方的数字赋值给空白方块
data[x][y] = data[x+1][y];
data[x+1][y] = 0;
x++;
initImage();
} else if (code==39) {
if (y==0){
return;
}
System.out.println("向右移动");
data[x][y] = data[x][y-1];
data[x][y-1] = 0;
y--;
initImage();
} else if (code==40) {
if (x==0){
return;
}
System.out.println("向下移动");
data[x][y] = data[x-1][y];
data[x-1][y] = 0;
x--;
initImage();
}
}
设置一个键盘监听事件
public void keyPressed(KeyEvent e) {
int code = e.getKeyCode();
if(code==65){
//删除原来的图片
this.getContentPane().removeAll();
//创建一个图片容器
JLabel jLabel2 = new JLabel(new ImageIcon(project+"\\all.jpg"));
//设置图片出现的位置
jLabel2.setBounds(83,134,420,420);
this.getContentPane().add(jLabel2);
this.getContentPane().repaint();
}
}
作弊码通过修改data数组的值来完成
if (code==87) {
data = new int[][]{
{1,2,3,4},
{5,6,7,8},
{9,10,11,12},
{13,14,15,0}
};
判断胜利,先定义一个函数
private boolean victory (int[][] win,int[][] data){
for (int i = 0; i < data.length; i++) {
for (int j = 0; j < data[i].length; j++){
if(data[i][j]!=win[i][j]){
return false;
}
}
}
return true;
}
当胜利以后,创建一个图片窗口存放胜利的图片(由于没有按图片,直接以代码形式略过)
并且在键盘事件事件中加一个return防止结束以后继续运行
if(victory(win,data)){
return;
}
JDialog 名称 = new JDialog()
;弹窗对象名称.setSize(宽度,高度)
弹窗对象名称.setModal(true)
添加ActionListener事件
public void actionPerformed(ActionEvent e) {
Object obj = e.getSource();
if(obj == replayItem){
//先将原来的界面清除
this.getContentPane().removeAll();
//步数清零
step = 0;
//重新打乱图片排序
initData();
//重新加载图片
initImage();
} else if (obj ==reloginItem) {
System.out.println("重新登录");
//进入登陆页面,同时关闭游戏界面
this.setVisible(false);
new LoginJFrame();
}else if (obj ==closeItem) {
System.out.println("关闭游戏");
//直接关闭游戏
System.exit(0);
}else if (obj ==accountItem) {
System.out.println("公众号");
//创建弹窗
JDialog gongzhong = new JDialog();
//设置弹窗的宽高
gongzhong.setSize(300,300);
//弹窗不关闭则无法操作下面的界面
gongzhong.setModal(true);
//使弹窗居中显示
gongzhong.setLocationRelativeTo(null);
//使弹窗置顶
gongzhong.setAlwaysOnTop(true);
//添加弹窗
gongzhong.setVisible(true);
}
JTextField 名称 = new JTextField
;JPasswordField 名称 = new JPasswordField
;JButton 名称 = new JButton
;按钮名称.setBoderPainted(false)
;按钮名称.setContentAreaFilled(false)
;按钮名称.setIcon()
;更换图片
else if (obj==Jay) {
//更换杰伦的图片
this.getContentPane().removeAll();
//改变图片路径
project = "D:\\Java\\IDEA\\代码文件\\Project_one\\project__one\\pintu_game\\Jay_chou\\image";
//更换number2 的值来改变图片
Random r = new Random();
int ran = r.nextInt(2)+1;
number2 = ran;
initData();
initImage();
}else if (obj==David) {
//更换陶喆的图片
project = "D:\\Java\\IDEA\\代码文件\\Project_one\\project__one\\pintu_game\\David_Tao\\image";
//更换number2 的值来改变图片
Random r = new Random();
int ran = r.nextInt(2)+1;
number2 = ran;
initData();
initImage();
}
package smulll.ui;
import java.util.Random;
public class CodeUtil {
private CodeUtil(){}
public static String getCOde(){
//创建一个数组,存放大小写字母
char[]arr= new char[52];
for (int i = 0; i < 52; i++) {
if(i<=25){
//添加小写字母
arr[i]= (char)(97+i);
}else {
//添加大写字母
arr[i]=(char)(65+i-26);
}
}
int[] arr2= {1,2,3,4,5,6,7,8,9,0};
String code = "";
//创建以一个随机数,使得抽取数组里面的数字以及字母加到字符串上
Random r = new Random();
for (int i = 0; i < 3; i++) {
int index = r.nextInt(arr.length);
code = arr[index] + code;
}
System.out.println(code);
for (int i = 0; i < 2; i++) {
int index = r.nextInt(arr2.length);
code = arr2[index] + code;
}
System.out.println(code);
//将字符串转换为字符数组,以便于打乱字符串的顺序
char[] codeArr = code.toCharArray();
for (int i = 0; i < codeArr.length; i++) {
int index = r.nextInt(codeArr.length);
if(index!=i){
char c = codeArr[i];
codeArr[i] = codeArr[index];
codeArr[index] = c;
}
}
//将字符数组再次转化为字符串,并且导出
String code2 = new String(codeArr);
return code2;
}
}
package smulll.ui;
import javax.swing.*;
import java.awt.event.KeyEvent;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.lang.reflect.Array;
import java.sql.SQLOutput;
import java.util.ArrayList;
public class LoginJFrame extends JFrame implements MouseListener {
//跟登录相关的界面
//创建事件条目对象
JButton btn1 = new JButton("登录");
JButton btn2 = new JButton("注册");
JTextField username = new JTextField();
JPasswordField jPasswordField = new JPasswordField();
JTextField j1 = new JTextField();
JLabel rightcode = new JLabel();
String code = CodeUtil.getCOde();
public LoginJFrame (){
this.setSize(488,430);
//设置页面标题
this.setTitle("拼图游戏 登录界面");
//设置页面在页面顶层
this.setAlwaysOnTop(true);
//页面居中
this.setLocationRelativeTo(null);
//设置关闭模式
this.setDefaultCloseOperation(3);
this.setLayout(null);
initView();
this.setVisible(true);
}
public class User{
private String usernames ;
private String password;
public User() {
}
public User(String username, String password) {
this.usernames = username;
this.password = password;
}
public String getUsername() {
return usernames;
}
public void setUsername(String username) {
this.usernames = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String toString() {
return "User{username = " + usernames + ", password = " + password + "}";
}
}
private void initView(){
JLabel usernameT = new JLabel("用户名:");
usernameT.setBounds(116,105,200,30);
this.getContentPane().add(usernameT);
//创建用户名输入框
username.setBounds(116,135,200,30);
this.getContentPane().add(username);
JLabel PasswordT = new JLabel("密码:");
PasswordT.setBounds(116,170,200,30);
this.getContentPane().add(PasswordT);
//创建密码输入框
jPasswordField.setBounds(116,196,200,30);
this.getContentPane().add(jPasswordField);
//创建验证码输入框
j1.setBounds(116,250,70,30);
this.getContentPane().add(j1);
//创建验证码
//System.out.println(code);
//将验证码插入窗口
//将生成的验证码添加给JLabel
rightcode.setText(code);
rightcode.setBounds(200,250,70,30);
this.getContentPane().add(rightcode);
//创建两个按钮
btn1.setBounds(116,300,60,30);
//去除按钮背景
//btn1.setContentAreaFilled(flase);
//去除按钮边框
//btn1.setBorderPainted(false);
this.getContentPane().add(btn1);
btn2.setBounds(260,300,60,30);
//去除按钮背景
//btn2.setContentAreaFilled(flase);
//去除按钮边框
//btn2.setBorderPainted(false);
this.getContentPane().add(btn2);
//给两个按钮添加事件
btn1.addMouseListener(this);
btn2.addMouseListener(this);
//给验证码窗口添加鼠标事件
rightcode.addMouseListener(this);
}
@Override
public void mouseClicked(MouseEvent e) {
//通过集合的方式装载用户信息
ArrayList<User> user2 = new ArrayList<>();
User u1 = new User("Smulll","123456");
User u2 = new User("laohuang","112233");
user2.add(u1);
user2.add(u2);
//建立两个数组在装在集合成员信息
String[] userNamearr = new String[user2.size()];
String[] userPassword = new String[user2.size()];
for (int i = 0; i < user2.size(); i++) {
userNamearr[i] = user2.get(i).usernames;
}
for (int i = 0; i < user2.size(); i++) {
userPassword[i] = user2.get(i).password;
}
String password = new String(jPasswordField.getPassword());
//获取用户点击事件焦点
Object c = e.getSource();
if(c == btn1){
//点击了登录按钮
System.out.println("点击了登录按钮");
if(!(j1.getText().equals(code))){
viewError("验证码输入错误");
rightcode.removeAll();
code = CodeUtil.getCOde();
j1.setText("");
initView();
return;
} else if ((userError(username.getText(),userNamearr))) {
System.out.println(username.getText());
viewError("用户名输入错误");
username.setText("");
jPasswordField.setText("");
return;
} else if ((userError(password,userPassword))) {
viewError("密码输入错误");
jPasswordField.setText("");
return;
}
this.dispose();
new GameJFrame();
} else if (c == btn2) {
//点击了注册按钮
System.out.println("点击了注册按钮");
}else if(c==rightcode){
//点击了验证码
System.out.println("点击了验证码");
rightcode.removeAll();
code = CodeUtil.getCOde();
j1.setText("");
initView();
}
}
@Override
public void mousePressed(MouseEvent e) {
}
@Override
public void mouseReleased(MouseEvent e) {
}
@Override
public void mouseEntered(MouseEvent e) {
}
@Override
public void mouseExited(MouseEvent e) {
}
//弹窗显示函数
public static void viewError(String count){
JDialog gongzhong = new JDialog();
//设置弹窗的宽高
gongzhong.setSize(100,60);
//弹窗不关闭则无法操作下面的界面
gongzhong.setModal(true);
//使弹窗居中显示
gongzhong.setLocationRelativeTo(null);
//使弹窗置顶
gongzhong.setAlwaysOnTop(true);
//创建一个窗口
JLabel jLabel = new JLabel(count);
//设置窗口大小
jLabel.setBounds(0,0,100,30);
//添加窗口到弹窗中
gongzhong.getContentPane().add(jLabel);
//弹窗显现
gongzhong.setVisible(true);
}
public static boolean userError(String user, String[] arr){
for (int i = 0; i < arr.length; i++) {
if(!(user.equals(arr[i]))){
return false;
}
}
return true;
}
}
package smulll.ui;
import javax.swing.*;
public class RegisterFrame extends JFrame {
//跟注册相关的代码
public RegisterFrame (){
this.setSize(488,500);
//设置页面标题
this.setTitle("拼图游戏 注册界面");
//设置页面在页面顶层
this.setAlwaysOnTop(true);
//页面居中
this.setLocationRelativeTo(null);
//设置关闭模式
this.setDefaultCloseOperation(3);
this.setVisible(true);
}
}
package smulll.ui;
import javax.swing.*;
import javax.swing.border.BevelBorder;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.time.temporal.Temporal;
import java.util.Random;
public class GameJFrame extends JFrame implements KeyListener, ActionListener {
//跟游戏相关的界面
//创建一个二维数组
int[][] data = new int[4][4];
//设置胜利时的图片下标索引
int[][] win= {
{1,2,3,4},
{5,6,7,8},
{9,10,11,12},
{13,14,15,0}
};
//找到0索引位置的图片
int x = 0;
int y = 0;
//设置要放置的图片
String project = "D:\\Java\\IDEA\\代码文件\\Project_one\\project__one\\pintu_game\\David_Tao\\image";
//创建一个计步器
int step = 0;
//创建图片切换的number2
int number2=1;
//创建选项下面的条目对象
JMenuItem replayItem = new JMenuItem("重新游戏");
JMenuItem reloginItem = new JMenuItem("重新登录");
JMenuItem closeItem = new JMenuItem("关闭游戏");
JMenuItem accountItem = new JMenuItem("公众号");
JMenuItem Jay = new JMenuItem("Jay");
JMenuItem David = new JMenuItem("David");
public GameJFrame() {
//初始化界面
initJFrame();
//初始化菜单
initJFrameBar();
//打乱图片
initData();
//初始化图片
initImage();
//使窗口显示出来
this.setVisible(true);
}
private void initData() {
int[] tempArr = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,0};
//打乱图片的顺序
Random r = new Random();
for (int i = 0; i < tempArr.length; i++) {
int index = r.nextInt(tempArr.length);
int temp = tempArr[i];
tempArr[i] = tempArr[index];
tempArr[index] = temp;
}
//把一维数组的数添加到二维数组中
for (int i = 0; i < tempArr.length; i++) {
if(tempArr[i]==0){
x = i/4;
y = i%4;
}
data[i / 4][i % 4] = tempArr[i];
}
}
private void initImage() {
//清除原先存在的图片
this.getContentPane().removeAll();
//判断是否胜利
if(victory(win,data)){
System.out.println("你胜利了");
}
//创建一个显示并步数的窗口
JLabel j2 = new JLabel("步数:"+step);
j2.setBounds(50,30,100,20);
this.getContentPane().add(j2);
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
int number = data[i][j];
//创建一个图片对象
//创建一个图片管理容器
JLabel jLabel1 = new JLabel(new ImageIcon(project+"\\"+number2+"\\"+number+".jpg"));
//指定图片位置
jLabel1.setBounds(105 * j+83, 105 * i+134, 105, 105);
//给图片加上一个边框
jLabel1.setBorder(new BevelBorder(1));
//把容器添加到界面中
this.getContentPane().add(jLabel1);
//背景图片在后面添加
this.getContentPane().repaint();
}
}
}
private void initJFrame() {
this.setSize(603, 680);
//设置页面标题
this.setTitle("拼图游戏 v1.0");
//设置页面在页面顶层
this.setAlwaysOnTop(true);
//页面居中
this.setLocationRelativeTo(null);
//设置关闭模式
this.setDefaultCloseOperation(3);
//取消默认居中放置
this.setLayout(null);
//给整个窗口添加一个键盘事件
this.addKeyListener(this);
}
private void initJFrameBar(){
//创建一个菜单
JMenuBar jMenuBar = new JMenuBar();
//创建菜单选项
JMenu functionJMenu = new JMenu("功能");
JMenu aboutJMenu = new JMenu("关于我们");
JMenu replacement = new JMenu("更换图片");
//添加到功能项目之下
functionJMenu.add(replacement);
functionJMenu.add(replayItem);
functionJMenu.add(reloginItem);
functionJMenu.add(closeItem);
//添加更换图片目录
replacement.add(Jay);
replacement.add(David);
//添加关于我们目录
aboutJMenu.add(accountItem);
//添加选项到菜单中
jMenuBar.add(functionJMenu);
jMenuBar.add(aboutJMenu);
//给菜单选项添加事件
replayItem.addActionListener(this);
reloginItem.addActionListener(this);
closeItem.addActionListener(this);
accountItem.addActionListener(this);
Jay.addActionListener(this);
David.addActionListener(this);
//添加菜单
this.setJMenuBar(jMenuBar);
}
@Override
public void keyTyped(KeyEvent e) {
}
@Override
public void keyReleased(KeyEvent e) {
//如果胜利了直接写return,使整个方法结束
if(victory(win,data)){
return;
}
int code = e.getKeyCode();
if(code==37){
if (y==3){
return;
}
System.out.println("向左移动");
data[x][y] = data[x][y+1];
data[x][y+1] = 0;
y++;
//每走一步就会给步数加1
step=step+1;
initImage();
} else if (code==38) {
System.out.println("向上移动");
//当方块在最下方时,点击向上按钮会报错
if (x==3){
return;
}
//逻辑:
//把空白方块下方的数字赋值给空白方块
data[x][y] = data[x+1][y];
data[x+1][y] = 0;
x++;
//每走一步就会给步数加1
step=step+1;
initImage();
} else if (code==39) {
if (y==0){
return;
}
System.out.println("向右移动");
data[x][y] = data[x][y-1];
data[x][y-1] = 0;
y--;
//每走一步就会给步数加1
step=step+1;
initImage();
} else if (code==40) {
if (x==0){
return;
}
System.out.println("向下移动");
data[x][y] = data[x-1][y];
data[x-1][y] = 0;
x--;
//每走一步就会给步数加1
step=step+1;
initImage();
} else if (code==65) {
initImage();
} else if (code==87) {
data = new int[][]{
{1,2,3,4},
{5,6,7,8},
{9,10,11,12},
{13,14,15,0}
};
initImage();
}
}
@Override
public void keyPressed(KeyEvent e) {
int code = e.getKeyCode();
if(code==65){
//删除原来的图片
this.getContentPane().removeAll();
//创建一个图片容器
JLabel jLabel2 = new JLabel(new ImageIcon(project+"\\all.jpg"));
//设置图片出现的位置
jLabel2.setBounds(83,134,420,420);
this.getContentPane().add(jLabel2);
this.getContentPane().repaint();
}
}
private boolean victory (int[][] win,int[][] data){
for (int i = 0; i < data.length; i++) {
for (int j = 0; j < data[i].length; j++){
if(data[i][j]!=win[i][j]){
return false;
}
}
}
return true;
}
@Override
public void actionPerformed(ActionEvent e) {
Object obj = e.getSource();
if(obj == replayItem){
//先将原来的界面清除
this.getContentPane().removeAll();
//步数清零
step = 0;
//重新打乱图片排序
initData();
//重新加载图片
initImage();
} else if (obj ==reloginItem) {
System.out.println("重新登录");
//进入登陆页面,同时关闭游戏界面
this.setVisible(false);
new LoginJFrame();
}else if (obj ==closeItem) {
System.out.println("关闭游戏");
//直接关闭游戏
System.exit(0);
}else if (obj ==accountItem) {
System.out.println("公众号");
//创建弹窗
JDialog gongzhong = new JDialog();
//设置弹窗的宽高
gongzhong.setSize(300,300);
//弹窗不关闭则无法操作下面的界面
gongzhong.setModal(true);
//使弹窗居中显示
gongzhong.setLocationRelativeTo(null);
//使弹窗置顶
gongzhong.setAlwaysOnTop(true);
//添加弹窗
gongzhong.setVisible(true);
} else if (obj==Jay) {
//更换杰伦的图片
this.getContentPane().removeAll();
//改变图片路径
project = "D:\\Java\\IDEA\\代码文件\\Project_one\\project__one\\pintu_game\\Jay_chou\\image";
//更换number2 的值来改变图片
Random r = new Random();
int ran = r.nextInt(2)+1;
number2 = ran;
initData();
initImage();
}else if (obj==David) {
//更换陶喆的图片
project = "D:\\Java\\IDEA\\代码文件\\Project_one\\project__one\\pintu_game\\David_Tao\\image";
//更换number2 的值来改变图片
Random r = new Random();
int ran = r.nextInt(2)+1;
number2 = ran;
initData();
initImage();
}
}
}
import com.sun.source.tree.NewArrayTree;
import smulll.ui.GameJFrame;
import smulll.ui.LoginJFrame;
import smulll.ui.RegisterFrame;
public class App {
public static void main(String[] args) {
new LoginJFrame();
//new GameJFrame();
//new RegisterFrame();
}
}