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 zhujiemei 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 zhujiemei() throws HeadlessException { //主界面 extracted(); //文本框字体 extracted2(); //按钮 extracted3(); //下拉框 extracted4(); JLabel tishiyuju = new JLabel("请选择你要开宠物"); tishiyuju.setBounds(155,20,150,50); tishiyuju.setFont(new Font("微软雅黑",1,16)); //设置字体颜色 tishiyuju.setForeground(Color.red); getContentPane().add(tishiyuju); //背景图片 extracted1(); //设置界面是否显示 setVisible(true); } private void extracted4() { congwu.setBounds(165,0,120,30); if (kaiguan < 1) { try { BufferedReader duqu = new BufferedReader(new FileReader("D:\\bc2\\kaixinge\\xinggewangfdang\\精灵王.txt")); 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 beijin = new JLabel(new ImageIcon("D:\\bc2\\kaixinge\\wendang\\资源 19527.png")); beijin.setBounds(-8, -10, 300, 500); getContentPane().add(beijin); } private void extracted() { //设置界面大小 setSize(300, 500); //设置标题 setTitle("洛克王国性格模拟器"); //设置关闭方式 setDefaultCloseOperation(3); //设置布局为自定义 setLayout(null); //让界面一直置顶 setAlwaysOnTop(true); //设置内部组件关系 setLocationRelativeTo(null); //设置是否可拉伸 setResizable(false); //设置图标 setIconImage(Toolkit.getDefaultToolkit().getImage("D:\\bc2\\kaixinge\\wendang\\a446b83a1502cec2933a65aec324384.png")); } @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); } } }
洛克王国卡性格小游戏4
最新推荐文章于 2025-04-24 19:54:05 发布