package day01;
import javax.swing.*;
import javax.swing.border.CompoundBorder;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Random;
//主界面
public class buzong extends JFrame implements ActionListener {
static HashMap<String, String> xinggege = new HashMap<>();
static ArrayList<String> sjxg = new ArrayList<>();
static {
try {
BufferedReader duqu = new BufferedReader(new FileReader("D:\\bc2\\kaixinge\\xinggewangfdang\\xingge"));
String uz;
while ((uz = duqu.readLine()) != null) {
String[] s = uz.split(" ");
xinggege.put(s[0], s[s.length - 1]);
sjxg.add(s[0]);
}
duqu.close();
} catch (IOException e) {
e.printStackTrace();
}
}
//文本框
JTextField xinge = new JTextField("", 2);
//文本框2
JTextField xinge1 = new JTextField(" ");
Random r = new Random();
//创建按钮对象
JButton kaijiang = new JButton("捕捉");
//创建按钮对象2
JButton kaijiang1 = new JButton("返回");
int kaiguan = 0;
//创建下拉列表对象
JComboBox<String> congwu = new JComboBox<>();
public buzong() throws HeadlessException {
//主界面
extracted();
//菜单
// extracted5();
//文本框字体
extracted2();
//按钮
extracted3();
//下拉框
extracted4();
//背景图片
extracted1();
//设置界面是否显示
setVisible(true);
}
private void extracted5() {
//创建菜单对象
JMenuBar tishikuaang = new JMenuBar();
//创建菜单对象二级对象
JMenu gn = new JMenu("功能");
//创建菜单对象三级对象
JMenuItem gyuwom = new JMenuItem ("关于我们");
//把三级菜单对象放到菜单二级对象
gn.add(gyuwom);
//把二级菜单对象放到菜单对象
tishikuaang.add(gn);
//把菜单对象添加到界面
setJMenuBar(tishikuaang);
}
private void extracted4() {
congwu.setBounds(165,0,120,30);
if (kaiguan < 1) {
try {
BufferedReader duqu = new BufferedReader(new FileReader("D:\\bc2\\kaixinge\\xinggewangfdang\\捕获种宠物"));
String uz;
while ((uz = duqu.readLine()) != null) {
congwu.addItem(uz);
}
duqu.close();
} catch (IOException e) {
e.printStackTrace();
}
}
congwu.addActionListener(this);
getContentPane().add(congwu);
}
private void extracted3() {
//设置按钮宽高和大小
kaijiang.setBounds(100, 300, 100, 50);
//绑定监听
kaijiang.addActionListener(this);
//设置字体样式大小
kaijiang.setFont(new Font("微软雅黑", 1, 25));
//设置按钮不可点击
// kaijiang.setEnabled(false);
//设置按钮背景颜色
kaijiang.setBackground(Color.WHITE);
//去除按钮背景
// kaijiang.setContentAreaFilled(false);
//添加到界面
getContentPane().add(kaijiang);
//-----------------------------------------------------------------------------------------------
//设置按钮宽高和大小
kaijiang1.setBounds(0, 0, 70, 40);
//绑定监听
kaijiang1.addActionListener(this);
//设置字体样式大小
kaijiang1.setFont(new Font("微软雅黑", 1, 14));
//设置按钮字体颜色
kaijiang1.setForeground(Color.WHITE);
//去除按钮背景
kaijiang1.setContentAreaFilled(false);
//添加到界面
getContentPane().add(kaijiang1);
}
private void extracted2() {
//删除已经出现的文字
this.getContentPane().removeAll();
//设置边框位置大小
xinge.setBounds(100, 100, 100, 50);
//设置字体样式
xinge.setFont(new Font("汉仪菱心体简", 1, 35));
//设置字体是否居中
xinge.setHorizontalAlignment(SwingConstants.CENTER);
//设置字体颜色
xinge.setForeground(Color.ORANGE);
//设置文本边框样式
xinge.setBorder(new CompoundBorder());
//设置是否可编辑
xinge.setEditable(false);
/*添加文本框背景颜色
xinge.setBackground(Color.red);*/
//------------------------------------------------------------------------
//设置边框位置大小
xinge1.setBounds(45, 160, 200, 50);
//设置字体样式
xinge1.setFont(new Font("微软雅黑", 1, 20));
//设置字体是否居中
xinge1.setHorizontalAlignment(SwingConstants.CENTER);
//设置字体颜色
// xinge1.setForeground(Color.ORANGE);
//设置文本边框样式
xinge1.setBorder(new CompoundBorder());
//设置是否可编辑
xinge1.setEditable(false);
/*添加文本框背景颜色
xinge.setBackground(Color.red);*/
//刷新图片
this.getContentPane().repaint();
//添加进界面
getContentPane().add(xinge);
getContentPane().add(xinge1);
}
private void extracted1() {
//创建图片对象
JLabel tishiyuju = new JLabel("请选择你要抓宠物");
//设置图片位置
tishiyuju.setBounds(155,20,150,50);
//设置字体
tishiyuju.setFont(new Font("微软雅黑",1,16));
//设置字体颜色
tishiyuju.setForeground(Color.red);
//添加到界面
getContentPane().add(tishiyuju);
JLabel beijin = new JLabel(new ImageIcon("D:\\bc2\\kaixinge\\wendang\\驱动.png"));
beijin.setBounds(-8, -10, 300, 500);
getContentPane().add(beijin);
}
private void extracted() {
//设置界面大小
setSize(300, 500);
//设置标题
setTitle("洛克王国性格模拟器");
//设置关闭方式
setDefaultCloseOperation(3);
//取消默认的居中放置,只有取消了才会按照XY轴的形式添加组件
setLayout(null);
//让界面一直置顶
setAlwaysOnTop(true);
//设置界面居中
setLocationRelativeTo(null);
//设置是否可拉伸
setResizable(false);
//设置图标
setIconImage(Toolkit.getDefaultToolkit().getImage("D:\\bc2\\kaixinge\\wendang\\a446b83a1502cec2933a65aec324384.png"));
/*//设置背景颜色
this.getContentPane().setBackground(new Color(178,178,178));*/
}
@Override
public void actionPerformed(ActionEvent e) {
Object source = e.getSource();
if (source == kaijiang) {
kaiguan++;
int i = r.nextInt(sjxg.size());
//修改文本框
xinge.setText(sjxg.get(i));
//修改文本框
xinge1.setText(xinggege.get(sjxg.get(i)));
}else if (source == congwu ){
kaiguan++;
xinge.setText(" ");
xinge1.setText(" ");
}
if (source == kaijiang1 ){
new login();
kaiguan = 0 ;
setVisible(false);
}
}
}
洛克王国卡小游戏1
ikun,ikun2024-03-21 20:07
相关推荐
晓纪同学30 分钟前
QT-简单视觉框架代码威桑30 分钟前
Qt SizePolicy详解:minimum 与 minimumExpanding 的区别飞飞-躺着更舒服33 分钟前
【QT】实现电子飞行显示器(简易版)明月看潮生39 分钟前
青少年编程与数学 02-004 Go语言Web编程 16课题、并发编程明月看潮生42 分钟前
青少年编程与数学 02-004 Go语言Web编程 17课题、静态文件Java Fans44 分钟前
C# 中串口读取问题及解决方案盛派网络小助手1 小时前
微信 SDK 更新 Sample,NCF 文档和模板更新,更多更新日志,欢迎解锁算法小白(真小白)1 小时前
低代码软件搭建自学第二天——构建拖拽功能唐小旭1 小时前
服务器建立-错误:pyenv环境建立后python版本不对007php0071 小时前
Go语言zero项目部署后启动失败问题分析与解决