package main; import java.awt.Container; import java.awt.GridLayout; import java.awt.Insets; import java.util.ArrayList; import java.util.List; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; public class Form extends JFrame { public JFrame form ; public Container container ; public List buttons; public JButton bDEL; public JButton bLEFT; public JButton bMOV; public JButton bRIGHT; public JButton bUP; public JButton bDOWN; //选择寄存 public int[] selectbuffer1 ,selectbuffer2; public JLabel selectbufferLabel; //位移寄存 public int[] movebuffer; public JLabel movebufferLabel; /* 显示创建窗口 */ public void show() { form = new JFrame("★big7★preview B"); container= form.getContentPane(); container.setLayout(new GridLayout(9,1,10,10)); container.add(get(1)); container.add(get(2)); container.add(get(3)); container.add(get(4)); container.add(get(5)); container.add(get(6)); container.add(get(7)); container.add(get(8)); JPanel panel = new JPanel(); panel.add(bDEL); panel.add(bLEFT); panel.add(bRIGHT); panel.add(bUP); panel.add(bDOWN); panel.add(bMOV); panel.add(selectbufferLabel); panel.add(movebufferLabel); container.add(panel); form.setVisible(true); form.setSize(800, 600); } /* 构造方法 */ Form() { form = null; container = null; selectbuffer1 = new int[2]; selectbuffer2 = new int[2]; selectbuffer1[0] =-1; selectbuffer1[1] =-1; selectbuffer2[0] =-1; selectbuffer2[1] =-1; movebuffer = new int[2]; movebuffer[0] = (0); movebuffer[1] = movebuffer[0]; buttons = new ArrayList(); for(int i =0 ;i<17 *8 ;i++) { JButton jButton = new Big7Button("★"+i+"★",i,this); jButton.setMargin(new Insets(1,1,1,1)); buttons.add(jButton); } bDEL =new Big7Button("d",this); bLEFT=new Big7Button("<",this); bMOV=new Big7Button("√", this); bRIGHT=new Big7Button(">",this); bUP= new Big7Button("^",this); bDOWN =new Big7Button("v",this); selectbufferLabel = new JLabel(); movebufferLabel = new JLabel(); } /*排布一行按钮*/ public JPanel get(int line) { JPanel panel = new JPanel(new GridLayout(1,17,10,10)); panel.add(buttons.get(0 + (line-1 )*17)); panel.add(buttons.get(1 + (line-1 )*17)); panel.add(buttons.get(2 + (line-1 )*17)); panel.add(buttons.get(3 + (line-1 )*17)); panel.add(buttons.get(4 + (line-1 )*17)); panel.add(buttons.get(5 + (line-1 )*17)); panel.add(buttons.get(6 + (line-1 )*17)); panel.add(buttons.get(7 + (line-1 )*17)); panel.add(buttons.get(8 + (line-1 )*17)); panel.add(buttons.get(9 + (line-1 )*17)); panel.add(buttons.get(10 + (line-1 )*17)); panel.add(buttons.get(11 + (line-1 )*17)); panel.add(buttons.get(12 + (line-1 )*17)); panel.add(buttons.get(13 + (line-1 )*17)); panel.add(buttons.get(14 + (line-1 )*17)); panel.add(buttons.get(15 + (line-1 )*17)); panel.add(buttons.get(16 + (line-1 )*17)); return panel; } /*刷新画面*/ public void Refesh(int[][] xyZone, int maxX, int maxY) { // TODO Auto-generated method stub for(int X = 0;X 0) { //右 if(movebuffer[1]>0) { setStr = "右 "+ movebuffer[1]; } //左 else{ setStr = "左 "+ -movebuffer[1]; } } // 上下 else{ //下 if(movebuffer[1]>0) { setStr = "下 "+ movebuffer[1]; } //上 else{ setStr = "上 "+ -movebuffer[1]; } } movebufferLabel.setText(setStr); } } /* 位移寄存 控制 */ public void setMovebuffer(int x, int y) { if(movebuffer[0] != x) { movebuffer[0] = x; movebuffer[1] = y; }else { movebuffer[1] += y; } refeshMovebuffer(); } /* big7移动功能*/ public void move() { if(main.move(movebuffer[0], movebuffer[1])) { Refesh(main.myBig7Entity.xyZone,main.myBig7Entity.maxX,main.myBig7Entity.maxY); } } }