⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uibuilder.java

📁 QQ连连看游戏源码。完全仿照QQ游戏中的连连看制作的单机版游戏。
💻 JAVA
字号:
/*
 * @author:Mandy
 * @date:2007-09-03
 * @this class is used to create the main Frame 
 */
package cn.nawang.test;
import javax.swing.JButton;
import javax.swing.JFrame;
//import javax.swing.JDialog;
import java.awt.*;
import javax.swing.*;

public class UIBuilder 
{
	public void initUI(UI FrameUI, EventHandler handler)
	{
		FrameUI.mainFrame = this.createMainFrame(FrameUI);
		FrameUI.settingBtn = this.createBtn(FrameUI, "setup.gif", handler);
		FrameUI.helpBtn = this.createBtn(FrameUI, "help.gif", handler);
		FrameUI.aboutBtn = this.createBtn(FrameUI, "about.gif",handler);
		FrameUI.startBtn = this.createBtn(FrameUI, "start.gif",handler);
		FrameUI.refreshBtn = this.createBtn(FrameUI, "refresh.gif",handler);
		FrameUI.hintBtn = this.createBtn(FrameUI, "hint.gif",handler);
		FrameUI.bombBtn = this.createBtn(FrameUI, "bomb.gif",handler);
		FrameUI.showBtn = this.createBtn(FrameUI, "demo.gif",handler);
		FrameUI.timeLabel = createLabel(FrameUI, "  Time: 000.0", "Arial", Font.BOLD, 25, null, 0xd4ffc8);
		FrameUI.statusLabel = createLabel(FrameUI, "欢迎使用连连看 1.0 alpha", "宋体", Font.PLAIN, 12, Color.WHITE, 0);
		FrameUI.gotoTop = createLabel(FrameUI, "Goto top 10", "Arial", Font.PLAIN, 12, Color.LIGHT_GRAY, 0);
		FrameUI.scoreLabel = createLabel(FrameUI, "  $0000", "Arial", Font.BOLD, 30, Color.YELLOW, 0);
		
		this.layoutManage(FrameUI);
	}
	public JFrame createMainFrame (UI FrameUI)
	{
		Toolkit toolkit = Toolkit.getDefaultToolkit();
		Image icon = toolkit.getImage("cn/nawang/image/kyodai16.gif");
		JFrame frame = new JFrame();
		frame.setTitle("连连看1.0");
		frame.setSize(780, 500);
		frame.setIconImage(icon);
		frame.setVisible(true);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		//frame.pack();
		return frame;
	}
	public JButton createBtn(UI FrameUI, String btnIcon, EventHandler handler)
	{
		JButton actionBtn = new JButton();
		actionBtn.setBorder(BorderFactory.createEmptyBorder());
		actionBtn.setSize(100, 50);
		actionBtn.setIcon(this.getIcon(btnIcon));
		actionBtn.addActionListener(handler);
		return actionBtn;
	}
	public static JLabel createLabel(UI FrameUI, String labelName, String fontName, int fontStyle, int fontSize, Color fontColor, int color)
	{
		JLabel label = new JLabel(labelName);
		label.setFont(new Font(fontName, fontStyle, fontSize));
		if(fontColor == null)
			label.setForeground(new Color(color));
		else 
			label.setForeground(fontColor);
		return label;
	}
	public void layoutManage(UI FrameUI)
	{
		FrameUI.contentPanel = new JPanel();
		FrameUI.contentPanel.setBackground(new Color(0x374d76));
		FrameUI.contentPanel.setLayout(new GridLayout(10, 17, 6, 6));
		
		FrameUI.toolBar = new JPanel();
		FrameUI.toolBar.setBackground(new Color(0x374d76));
		
		FrameUI.toolBar.setLayout(new FlowLayout(FlowLayout.LEFT, 50, 0));
		FrameUI.toolBar.add(FrameUI.settingBtn);
		FrameUI.toolBar.add(FrameUI.helpBtn);
		FrameUI.toolBar.add(FrameUI.aboutBtn);
		FrameUI.actionPanel = new JPanel();
		FrameUI.actionPanel.setBackground(new Color(0x6c93d6));
		FrameUI.actionPanel.setLayout(new BoxLayout(FrameUI.actionPanel, BoxLayout.Y_AXIS));
		FrameUI.actionPanel.add(Box.createGlue());
		FrameUI.actionPanel.add(FrameUI.scoreLabel);
		FrameUI.actionPanel.add(Box.createGlue());
		FrameUI.actionPanel.add(FrameUI.startBtn);
		FrameUI.actionPanel.add(Box.createGlue());
		FrameUI.actionPanel.add(FrameUI.refreshBtn);
		FrameUI.actionPanel.add(Box.createGlue());
		FrameUI.actionPanel.add(FrameUI.hintBtn);
		FrameUI.actionPanel.add(Box.createGlue());
		FrameUI.actionPanel.add(FrameUI.bombBtn);
		FrameUI.actionPanel.add(Box.createGlue());
		FrameUI.actionPanel.add(FrameUI.showBtn);
		FrameUI.actionPanel.add(Box.createGlue());
		FrameUI.actionPanel.add(FrameUI.timeLabel);
		FrameUI.actionPanel.add(Box.createGlue());
		
		FrameUI.statusPanel = new JPanel();
		FrameUI.statusPanel.setBackground(new Color(0x374d76));
		FrameUI.statusPanel.setLayout(new FlowLayout(FlowLayout.LEFT, 20, 0));
		FrameUI.statusPanel.add(FrameUI.statusLabel);
		for(int i = 0; i<25; i++)
		{
			FrameUI.statusPanel.add(Box.createGlue());
		}
		FrameUI.statusPanel.add(FrameUI.gotoTop);
		
		FrameUI.mainContainer = FrameUI.mainFrame.getContentPane();
		FrameUI.mainPanel = new JPanel();
		FrameUI.mainPanel.setLayout(new BorderLayout(3,3));
		FrameUI.mainPanel.add(FrameUI.toolBar, BorderLayout.NORTH);
		FrameUI.mainPanel.add(FrameUI.contentPanel, BorderLayout.CENTER);
		FrameUI.mainPanel.add(FrameUI.statusPanel, BorderLayout.SOUTH);
		FrameUI.mainPanel.add(FrameUI.actionPanel, BorderLayout.EAST);
		FrameUI.mainContainer.add(FrameUI.mainPanel, 0);
	}
	public static ImageIcon getIcon(String filename)
	{
		ImageIcon icon = new ImageIcon("cn/nawang/image/"+filename);
		return icon;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -