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

📄 gamepanel.java

📁 局域网斗地主框架,好象没有card的功能不能打牌
💻 JAVA
字号:
import javax.swing.JPanel;
import java.awt.BorderLayout;
import javax.swing.JButton;
import java.awt.FlowLayout;
import javax.swing.JLabel;

/*
 * 创建日期 2005-7-25
 *
 * TODO 要更改此生成的文件的模板,请转至
 * 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */

/**
 * @author 叶少伟 TODO 要更改此生成的类型注释的模板,请转至 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
public class GamePanel extends JPanel
{

	private JPanel	nPanel				= null;
	private JPanel	sPanel				= null;
	private JPanel	wPanel				= null;
	private JPanel	ePanel				= null;
	private JPanel	cPanel				= null;
	private JPanel	snPanel				= null;
	private JPanel	player1Panel		= null;
	private JButton	passButton			= null;
	private JButton	clueButton			= null;
	private JButton	outButton			= null;
	private JPanel	nwPanel				= null;
	private JPanel	ncPanel				= null;
	private JPanel	nePanel				= null;
	private JPanel	player1NamePanel	= null;
	private JLabel	player1Label		= null;
	private JPanel	player3Panel		= null;
	private JPanel	player3NamePanel	= null;
	private JLabel	player3Label		= null;
	private JPanel	player2Panel		= null;
	private JPanel	player2NamePanel	= null;
	private JLabel	player2Label		= null;
	private PKCard []	lastCards, player1Cards, player2Cards, player3Cards;

	public void setPlayerCards(PKCard [] c)
	{
		player1Cards = c;
	}

	public void setLastCards(PKCard [] c)
	{
		lastCards = c;
	}

	public void setNames(String [] names)
	{
		player1Label.setText(names[0]);
		player2Label.setText(names[1]);
		player3Label.setText(names[2]);
	}

	public void removeAllNames()
	{
		player1Label.setText("");
		player2Label.setText("");
		player3Label.setText("");
	}

	public void removeAllCards()
	{
		ncPanel.removeAll();
		ncPanel.updateUI();
		player1Panel.removeAll();
		player1Panel.updateUI();
		player2Panel.removeAll();
		player2Panel.updateUI();
		player3Panel.removeAll();
		player3Panel.updateUI();
	}
	
	public void setCardsLocation(int p1, int p2, int p3)
	{
		int x = 30;
		int y = 20;
		for(int i = 0; i < 3; i++)
		{
			ncPanel.add(lastCards[i]);
			lastCards[i].setLocation(x, y);
			x += 85;
		}
		addCardToPanel(player1Cards, player1Panel, p1);
		addCardToPanel(player2Cards, player2Panel, p2);
		addCardToPanel(player3Cards, player3Panel, p3);
	}

	public void addCardToPanel(PKCard [] card, JPanel panel, int n)
	{
		int x = 0;
		int y = 0;
		int addx = 0;
		int addy = 0;
		if(panel.equals(player1Panel))
		{
			x = 385 - n / 2 * 15;
			y = 20;
			addx = 15;
		}
		else if(panel.equals(player2Panel))
		{
			x = 40;
			y = 160 - n / 2 * 15;
			addy = 15;
		}
		else if(panel.equals(player3Panel))
		{
			x = 30;
			y = 160 - n / 2 * 15;
			addy = 15;
		}
		for(int i = 0; i < n; i++)
		{
			panel.add(card[i], 0);
			card[i].setLocation(x, y);
			if(panel.equals(player1Panel))
				card[i].turnFornt();
			x += addx;
			y += addy;
		}
		panel.updateUI();
	}

	/**
	 * This is the default constructor
	 */
	public GamePanel()
	{
		super();
		initialize();
		player2Cards = new PKCard[20];
		player3Cards = new PKCard[20];
		for(int i = 0; i < 20; i++)
		{
			player2Cards[i] = new PKCard("rear");
			player3Cards[i] = new PKCard("rear");
		}
	}

	/**
	 * This method initializes this
	 * 
	 * @return void
	 */
	private void initialize()
	{
		this.setLayout(new BorderLayout());
		this.setOpaque(false);
		this.setSize(850, 750);
		this.setPreferredSize(new java.awt.Dimension(850, 750));
		this.add(getNPanel(), java.awt.BorderLayout.NORTH);
		this.add(getSPanel(), java.awt.BorderLayout.SOUTH);
		this.add(getWPanel(), java.awt.BorderLayout.WEST);
		this.add(getEPanel(), java.awt.BorderLayout.EAST);
		this.add(getCPanel(), java.awt.BorderLayout.CENTER);
	}

	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getNPanel()
	{
		if(nPanel == null)
		{
			nPanel = new JPanel();
			nPanel.setLayout(new BorderLayout());
			nPanel.setOpaque(false);
			nPanel
					.setCursor(new java.awt.Cursor(
							java.awt.Cursor.DEFAULT_CURSOR));
			nPanel.setPreferredSize(new java.awt.Dimension(0, 126));
			nPanel.add(getNwPanel(), java.awt.BorderLayout.WEST);
			nPanel.add(getNcPanel(), java.awt.BorderLayout.CENTER);
			nPanel.add(getNePanel(), java.awt.BorderLayout.EAST);
		}
		return nPanel;
	}

	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getSPanel()
	{
		if(sPanel == null)
		{
			sPanel = new JPanel();
			sPanel.setLayout(new BorderLayout());
			sPanel.setOpaque(false);
			sPanel.setPreferredSize(new java.awt.Dimension(10, 186));
			sPanel.add(getSnPanel(), java.awt.BorderLayout.NORTH);
			sPanel.add(getPlayer1Panel(), java.awt.BorderLayout.CENTER);
			sPanel.add(getPlayer1NamePanel(), java.awt.BorderLayout.SOUTH);
		}
		return sPanel;
	}

	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getWPanel()
	{
		if(wPanel == null)
		{
			wPanel = new JPanel();
			wPanel.setLayout(new BorderLayout());
			wPanel.setOpaque(false);
			wPanel.setPreferredSize(new java.awt.Dimension(176, 10));
			wPanel.add(getPlayer3Panel(), java.awt.BorderLayout.CENTER);
			wPanel.add(getPlayer3NamePanel(), java.awt.BorderLayout.WEST);
		}
		return wPanel;
	}

	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getEPanel()
	{
		if(ePanel == null)
		{
			ePanel = new JPanel();
			ePanel.setLayout(new BorderLayout());
			ePanel.setOpaque(false);
			ePanel.setPreferredSize(new java.awt.Dimension(176, 10));
			ePanel.add(getPlayer2Panel(), java.awt.BorderLayout.CENTER);
			ePanel.add(getPlayer2NamePanel(), java.awt.BorderLayout.EAST);
		}
		return ePanel;
	}

	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getCPanel()
	{
		if(cPanel == null)
		{
			cPanel = new JPanel();
			cPanel.setOpaque(false);
		}
		return cPanel;
	}

	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getSnPanel()
	{
		if(snPanel == null)
		{
			FlowLayout flowLayout1 = new FlowLayout();
			snPanel = new JPanel();
			snPanel.setLayout(flowLayout1);
			snPanel.setOpaque(false);
			flowLayout1.setVgap(0);
			flowLayout1.setHgap(15);
			snPanel.add(getPassButton(), null);
			snPanel.add(getClueButton(), null);
			snPanel.add(getOutButton(), null);
		}
		return snPanel;
	}

	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getPlayer1Panel()
	{
		if(player1Panel == null)
		{
			player1Panel = new JPanel();
			player1Panel.setLayout(null);
			player1Panel.setOpaque(false);
		}
		return player1Panel;
	}

	/**
	 * This method initializes jButton
	 * 
	 * @return javax.swing.JButton
	 */
	private JButton getPassButton()
	{
		if(passButton == null)
		{
			passButton = new JButton();
			passButton.setText("放弃");
			passButton.setBorderPainted(false);
			passButton.setOpaque(false);
			passButton.setEnabled(false);
			passButton.addActionListener(new java.awt.event.ActionListener()
			{
				public void actionPerformed(java.awt.event.ActionEvent e)
				{
					System.out.println("actionPerformed()"); // TODO
					// Auto-generated
					// Event stub
					// actionPerformed()
				}
			});
		}
		return passButton;
	}

	/**
	 * This method initializes jButton1
	 * 
	 * @return javax.swing.JButton
	 */
	private JButton getClueButton()
	{
		if(clueButton == null)
		{
			clueButton = new JButton();
			clueButton.setText("提示");
			clueButton.setEnabled(false);
			clueButton.setBorderPainted(false);
			clueButton.setOpaque(false);
			clueButton.addActionListener(new java.awt.event.ActionListener()
			{
				public void actionPerformed(java.awt.event.ActionEvent e)
				{
					System.out.println("actionPerformed()"); // TODO
					// Auto-generated
					// Event stub
					// actionPerformed()
				}
			});
		}
		return clueButton;
	}

	/**
	 * This method initializes jButton2
	 * 
	 * @return javax.swing.JButton
	 */
	private JButton getOutButton()
	{
		if(outButton == null)
		{
			outButton = new JButton();
			outButton.setText("出牌");
			outButton.setBorderPainted(false);
			outButton.setOpaque(false);
			outButton.setEnabled(false);
			outButton.setCursor(new java.awt.Cursor(
					java.awt.Cursor.DEFAULT_CURSOR));
			outButton.addActionListener(new java.awt.event.ActionListener()
			{
				public void actionPerformed(java.awt.event.ActionEvent e)
				{
					System.out.println("actionPerformed()"); // TODO
					// Auto-generated
					// Event stub
					// actionPerformed()
				}
			});
		}
		return outButton;
	}

	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getNwPanel()
	{
		if(nwPanel == null)
		{
			nwPanel = new JPanel();
			nwPanel.setOpaque(false);
			nwPanel.setPreferredSize(new java.awt.Dimension(265, 10));
		}
		return nwPanel;
	}

	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getNcPanel()
	{
		if(ncPanel == null)
		{
			ncPanel = new JPanel();
			ncPanel.setLayout(null);
			ncPanel.setOpaque(false);
			ncPanel.setPreferredSize(new java.awt.Dimension(273, 10));
		}
		return ncPanel;
	}

	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getNePanel()
	{
		if(nePanel == null)
		{
			nePanel = new JPanel();
			nePanel.setPreferredSize(new java.awt.Dimension(265, 10));
			nePanel.setOpaque(false);
		}
		return nePanel;
	}

	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getPlayer1NamePanel()
	{
		if(player1NamePanel == null)
		{
			player1Label = new JLabel();
			player1NamePanel = new JPanel();
			//			player1Label.setText("玩家1");
			//			player1Label.setIcon(new ImageIcon(getClass().getResource(
			//					"/images/head.gif")));
			player1NamePanel.setOpaque(false);
			player1NamePanel.add(player1Label, null);
		}
		return player1NamePanel;
	}

	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getPlayer3Panel()
	{
		if(player3Panel == null)
		{
			player3Panel = new JPanel();
			player3Panel.setLayout(null);
			player3Panel.setOpaque(false);
		}
		return player3Panel;
	}

	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getPlayer3NamePanel()
	{
		if(player3NamePanel == null)
		{
			player3Label = new JLabel();
			FlowLayout flowLayout2 = new FlowLayout();
			flowLayout2.setVgap(175);
			player3NamePanel = new JPanel();
			player3NamePanel.setLayout(flowLayout2);
			player3Label
					.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
			player3Label
					.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
			//			player3Label.setIcon(new ImageIcon(getClass().getResource(
			//					"/images/head.gif")));
			player3NamePanel.setOpaque(false);
			//			player3Label.setText("玩家3");
			player3NamePanel.add(player3Label, null);
		}
		return player3NamePanel;
	}

	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getPlayer2Panel()
	{
		if(player2Panel == null)
		{
			player2Panel = new JPanel();
			player2Panel.setLayout(null);
			player2Panel.setOpaque(false);
		}
		return player2Panel;
	}

	/**
	 * This method initializes jPanel
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getPlayer2NamePanel()
	{
		if(player2NamePanel == null)
		{
			player2Label = new JLabel();
			FlowLayout flowLayout11 = new FlowLayout();
			flowLayout11.setVgap(175);
			player2Label
					.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
			player2Label
					.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
			//			player2Label.setIcon(new ImageIcon(getClass().getResource(
			//					"/images/head.gif")));
			player2NamePanel = new JPanel();
			player2NamePanel.setLayout(flowLayout11);
			player2NamePanel.setOpaque(false);
			//			player2Label.setText("玩家2");
			player2NamePanel.add(player2Label, null);
		}
		return player2NamePanel;
	}
}

⌨️ 快捷键说明

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