📄 swapd.java
字号:
import javax.swing.*;import java.awt.*;import java.awt.event.*;/** * Swap Dialog * * @author Sam Cavenagh * @version 02/12/02 * * Website: http://home.pacific.net.au/~cavenagh/SH/ * Email: cavenaghweb@hotmail.com */public class SwapD extends JDialog implements ActionListener{ JLabel handLabel = new JLabel("Cards in Hand", JLabel.CENTER); JLabel tableLabel = new JLabel("Cards on Table", JLabel.CENTER); JList hand; JList table; JScrollPane handScroll; JScrollPane tableScroll; private DefaultListModel handModel; private DefaultListModel tableModel; JButton left = new JButton("<<"); JButton right = new JButton(">>"); JButton swap = new JButton(" Swap Cards "); JButton noswap = new JButton("Dont Swap Cards"); JPanel panel; Hand inhand; Hand ontable; int inontable = 3; boolean swapB = false; JFrame parent; public SwapD(JFrame parent, Card[] dealthand, Card[] dealttable) { super(parent, "Card Swap", true); setSize(260, 200); Point p = parent.getLocation(); setLocation((int)p.getX() + 90,(int)p.getY() + 150); this.parent = parent; inhand = new Hand(); ontable = new Hand(); for(int n = 0; n < 3; n++){ inhand.addCard(dealthand[n]); ontable.addCard(dealttable[n]); } panel = new JPanel(); GridBagLayout gridbag = new GridBagLayout(); GridBagConstraints c = new GridBagConstraints(); panel.setLayout(gridbag); c.anchor = GridBagConstraints.WEST; c.fill = GridBagConstraints.BOTH; getContentPane().add(panel); c.weightx = 1; //c.weighty = 1; c.gridy = 1; panel.add(handLabel, c); panel.add(tableLabel, c); //JList ---------------- c.gridy = 2; handModel = new DefaultListModel(); tableModel = new DefaultListModel(); //adding card string value to JList for(int n = 0; n < 3; n++) { handModel.addElement(inhand.getCard(n).getStringValue()); tableModel.addElement(ontable.getCard(n).getStringValue()); } hand = new JList(handModel); table = new JList(tableModel); hand.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); handScroll = new JScrollPane(hand); tableScroll = new JScrollPane(table); c.weighty = 1; panel.add(handScroll, c); panel.add(tableScroll, c); c.weighty = 0; c.gridy = 3; panel.add(right, c); right.addActionListener(this); panel.add(left, c); left.addActionListener(this); c.gridy = 4; panel.add(swap, c); swap.addActionListener(this); panel.add(noswap, c); noswap.addActionListener(this); } public void actionPerformed(ActionEvent e) { String pressed = e.getActionCommand(); String selection = "none"; if(pressed.equals(">>")){ try{ selection = handModel.getElementAt(hand.getSelectedIndex()).toString(); }catch(Exception w){ selection = "none";} if(!selection.equals("none")){ handModel.removeElementAt(hand.getSelectedIndex()); for(int n = 0; n < 6; n++){ if(inhand.getCard(n).getStringValue().equals(selection)){ ontable.addCard(inhand.getCard(n)); tableModel.addElement(inhand.getCard(n).getStringValue()); inhand.removeCard(n); break; } } } } else if(pressed.equals("<<")){ try{ selection = tableModel.getElementAt(table.getSelectedIndex()).toString(); }catch(Exception w){ selection = "none";} if(!selection.equals("none")){ tableModel.removeElementAt(table.getSelectedIndex()); for(int n = 0; n < 6; n++){ if(ontable.getCard(n).getStringValue().equals(selection)){ inhand.addCard(ontable.getCard(n)); handModel.addElement(ontable.getCard(n).getStringValue()); ontable.removeCard(n); break; } } } } else if(pressed.equals(" Swap Cards ")){ if(inhand.length() == 4 && ontable.length() == 4){ swapB = true; setVisible(false); }else JOptionPane.showMessageDialog(parent, "You must have 3 in each group.", "Swap Error", JOptionPane.WARNING_MESSAGE); }else setVisible(false); } public boolean display() { show(); return swapB; } public Card[] getInHand() { Card cards[] = new Card[3]; for(int n = 0; n < 3; n++) cards[n] = inhand.getCard(n); return cards; } public Card[] getOnTable() { Card cards[] = new Card[3]; for(int n = 0; n < 3; n++) cards[n] = ontable.getCard(n); return cards; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -