使用 Java 的 Swing 写个王者荣耀攻略桌面应用(半成品)

最近在整理之前写过的 JavaSE 代码,发现了很久以前写过的一个有趣的图形界面程序,本来试着去做一个王者荣耀助手的,发现需要太多的素材了,且基于Swing写界面远不如使用 html、css 等以网页的方式实现灵活简便,就写到这里就结束了,下面分享一下

这里写图片描述

package larger5;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.net.*;

public class Myimplements extends JFrame {
	public Myimplements() {
		setTitle("Q版教材——将坑进行到底");
		setBounds(650, 350, 665, 445);
		setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
		Container container = getContentPane();
		// setLayout(null);
		setLayout(new BorderLayout());
		JPanel p1 = new JPanel();
		JPanel p2 = new JPanel();
		JLabel bxx = new JLabel("王者农药神坑攻略——出装  铭文  对线  打野 ");
		JButton bx1 = new JButton("出装");
		JButton bx2 = new JButton("铭文");
		JButton bx3 = new JButton("打法");
		p2.add(bx1);
		p2.add(bx2);
		p2.add(bx3);
		p1.add(bxx);
		this.add(BorderLayout.SOUTH, p1);
		bxx.setBackground(Color.white);
		Icon i = new ImageIcon("src/凤求凰.jpg");
		JLabel l = new JLabel();
		l.setIcon(i);
		container.add(l);
		JMenuBar m = new JMenuBar();
		setJMenuBar(m);
		// 英雄类型
		JMenu m1 = new JMenu("刺客(A)");
		JMenu m2 = new JMenu("战士(B)");
		JMenu m3 = new JMenu("射手(C)");
		JMenu m4 = new JMenu("法师(D)");
		JMenu m5 = new JMenu("辅助(E)");
		JMenu m6 = new JMenu("坦克(F)");
		// 英雄单位
		JMenu n1 = new JMenu("那可露露(O)");
		JMenu n2 = new JMenu("李白(P)");
		JMenu n3 = new JMenu("橘右京(Q)");
		JMenu n4 = new JMenu("关羽(O)");
		JMenu n5 = new JMenu("赵玉(P)");
		JMenu n6 = new JMenu("刘备(Q)");
		// 关羽攻略
		JMenuItem n31 = new JMenuItem("出装(U)");
		JMenuItem n32 = new JMenuItem("铭文(V)");
		JMenuItem n33 = new JMenuItem("打法(W)");
		// 李白攻略
		JMenuItem n21 = new JMenuItem("人生(U)");
		JMenuItem n22 = new JMenuItem("技能(V)");
		JMenuItem n23 = new JMenuItem("打法(W)");
		JMenuItem n24 = new JMenuItem("出装(X)");
		JMenuItem n25 = new JMenuItem("铭文(Y)");
		JMenuItem n26 = new JMenuItem("选手(Z)");

		// 绑定快捷键
		n21.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_U, ActionEvent.CTRL_MASK));
		n22.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, ActionEvent.CTRL_MASK));
		n23.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_W, ActionEvent.CTRL_MASK));
		n24.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, ActionEvent.CTRL_MASK));
		n25.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Y, ActionEvent.CTRL_MASK));
		n26.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Z, ActionEvent.CTRL_MASK));

		// 英雄类型
		m.add(m1);
		m.add(m2);
		m.add(m3);
		m.add(m4);
		m.add(m5);
		m.add(m6);
		// 刺客英雄
		m1.add(n1);
		m1.add(n2);
		m1.add(n3);
		// 战士英雄
		m2.add(n4);
		m2.add(n5);
		m2.add(n6);
		// 关羽攻略
		n4.add(n31);
		n4.add(n32);
		n4.add(n33);
		// 李白攻略
		n2.add(n21);
		n2.add(n22);
		n2.add(n23);
		n2.add(n24);
		n2.add(n25);
		n2.add(n26);
		// --菜单栏->战士->关羽->出装
		n31.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent arg0) {
				// TODO Auto-generated method stub 铭文
				Icon i1 = new ImageIcon("src/关羽经典.png");
				JLabel l1 = new JLabel();
				l1.setIcon(i1);
				Icon i2 = new ImageIcon("src/关羽出装.png");
				JLabel l2 = new JLabel();
				l2.setIcon(i2);
				JDialog dialog = new JDialog();// 创建当前窗体的对话框
				dialog.setLayout(new GridLayout(2, 1, 5, 5));
				dialog.add(l1);
				dialog.add(l2);
				dialog.setModal(true);// 设置对话框为模态
				dialog.setSize(354, 200);// 设置对话框大小
				dialog.setLocationByPlatform(true);// 由系统平台布置窗体位置
				dialog.setTitle("关羽出装推荐");// 对话框标题
				dialog.setVisible(true);// 显示对话框
			}
		});
		// --菜单栏->战士->关羽->铭文
		n32.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent arg0) {
				// TODO Auto-generated method stub 铭文
				Icon i1 = new ImageIcon("src/na.jpg");
				JLabel l1 = new JLabel();
				l1.setIcon(i1);
				Icon i2 = new ImageIcon("src/122.png");
				JLabel l2 = new JLabel();
				l2.setIcon(i2);
				JDialog dialog = new JDialog();// 创建当前窗体的对话框
				dialog.setLayout(new GridLayout(2, 1, 5, 5));
				dialog.add(l1);
				dialog.add(l2);
				// dialog.setBackground(Color.gray);
				dialog.setModal(true);// 设置对话框为模态
				dialog.setSize(500, 400);// 设置对话框大小
				dialog.setLocationByPlatform(true);// 由系统平台布置窗体位置
				dialog.setTitle("那可露露-铭文推荐");// 对话框标题
				dialog.setVisible(true);// 显示对话框
			}
		});
		// --菜单栏->战士->关羽->打法
		n33.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent arg0) {
				// TODO Auto-generated method stub 铭文
				Icon i1 = new ImageIcon("src/na.jpg");
				JLabel l1 = new JLabel();
				l1.setIcon(i1);
				Icon i2 = new ImageIcon("src/122.png");
				JLabel l2 = new JLabel();
				l2.setIcon(i2);
				JDialog dialog = new JDialog();// 创建当前窗体的对话框
				dialog.setLayout(new GridLayout(2, 1, 10, 10));
				dialog.add(l1);
				dialog.add(l2);
				dialog.setModal(true);// 设置对话框为模态
				dialog.setSize(500, 400);// 设置对话框大小
				dialog.setLocationByPlatform(true);// 由系统平台布置窗体位置
				dialog.setTitle("那可露露-铭文推荐");// 对话框标题
				dialog.setVisible(true);// 显示对话框
			}
		});

		setVisible(true);
	}

	public static void main(String[] args) {
		new Myimplements();
	}
}

希望对大家有启发,有兴趣的朋友可以以此为基础,继续写下去,写一个助手~

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT小村

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值