📄 guibuilder.java
字号:
{
if(outer.itemsitem.get(temList.get(k))!=null)
outer.itemsitem.remove(temList.get(k));
}
}
}
outer.removeCMP(outer.focusCMP);
outer.label_1.setText("");
outer.text_1.setText("");
outer.text_2.setText("");
outer.cbo_1.removeAllItems();
outer.repaint();
//System.out.println(outer.itemsitem.size());
}
}
else
{
}
}
}
else
{
Point2D p=e.getPoint();
outer.put.setFrame(p.getX()-5, p.getY()-5, 10, 10);
outer.getNearestPoint();
outer.cmp.add((outer.focusCMP=new MyComponent(outer.nearest,outer.willPut,outer.maxID,outer)));
outer.maxID++;
outer.willPut=-1;
outer.label_1.setText(" "+outer.SORT.CMP[outer.focusCMP.sort]);
outer.text_1.setText(outer.focusCMP.name);
outer.text_2.setText(outer.focusCMP.text);
int st=outer.focusCMP.sort;
ArrayList<Integer> temlist=outer.RELATION.CMP[st];
outer.cbo_1.removeAllItems();
for(int i=0;i<temlist.size();i++)
{
outer.cbo_1.addItem(outer.LISTENER.NAME[temlist.get(i)]);
}
outer.repaint();
}
}
public void mouseReleased(MouseEvent e)
{
if(outer.dragRange==true)
{
outer.setBorderLocation();
}
else
{
if(outer.draging!=null)
{
Point2D p=e.getPoint();
outer.put.setFrame(p.getX()-5, p.getY()-5, 10, 10);
outer.getNearestPoint();
if(outer.dragingCMP==true)
{
outer.draging.setLocation(outer.nearest);
}
}
else if(outer.dragingSize!=null)
{
Point2D p=e.getPoint();
outer.put.setFrame(p.getX()-5, p.getY()-5, 10, 10);
outer.getNearestPoint();
outer.dragingSize.setSize(outer.nearest);
}
}
outer.draging=null;
outer.dragingSize=null;
outer.dragRange=false;
outer.dragingCMP=false;
repaint();
}
public void mouseDragged(MouseEvent e)
{
//outer.put.setFrame(e.getPoint().getX()-5, e.getPoint().getY()-5, 10, 10);
if(outer.dragRange==true)
{
outer.range.setRange(e.getPoint());
outer.repaint();
}
else
{
if(outer.draging!=null)
{
outer.draging.setLocation(e.getPoint());
outer.dragingCMP=true;
outer.repaint();
}
else if(outer.dragingSize!=null)
{
outer.dragingSize.setSize(e.getPoint());
outer.dragingCMP=true;
outer.repaint();
}
}
}
public void mouseMoved(MouseEvent e)
{
//outer.put.setFrame(e.getPoint().getX()-5, e.getPoint().getY()-5, 10, 10);
if(outer.findRange(e.getPoint()))
{
outer.changesize();
}
else if(outer.findComponent(e.getPoint())!=null)
{
if(outer.setSizeFlag==true)
{
outer.changesize();
}
else
{
outer.cross();
}
}
else
{
outer.deletecross();
}
}
}
class Range
{
Rectangle2D border=new Rectangle2D.Double(0,0,300,300);
Color cor=new Color(150,150,150);
Rectangle2D dragArea=new Rectangle2D.Double(290,290,10,10);
public void setRange(Point2D p)
{
double x=p.getX();
double y=p.getY();
if(x>100&&y>100)
{
border.setFrame(0,0,x,y);
dragArea.setFrame(x-10, y-10, 10, 10);
}
else
{
border.setFrame(0,0,100,100);
dragArea.setFrame(90, 90, 10, 10);
}
}
public void draw(Graphics2D g)
{
g.setColor(cor);
g.fill(this.border);
}
}
class MyPoint
{
Point2D point=null;
Color cor=Color.orange;
Ellipse2D circle=new Ellipse2D.Double();
MyPoint(Point2D p )
{
point=p;
double x=p.getX();
double y=p.getY();
circle.setFrameFromCenter(x, y, x+2, y+2);
}
void draw(Graphics2D g)
{
g.setColor(Color.pink);
g.draw(circle);
}
}
class MyComponent
{
int id=0;
int sortID=1;
String name=null;
String text=null;
int sort=-1;
Rectangle2D border=null;
Point2D point=null;
Rectangle2D dragSize=null;
GUIBuilder outer=null;
MyComponent(Point2D p,int theSort,int ID,GUIBuilder out)
{
point=p;
sort=theSort;
id=ID;
outer=out;
border=new Rectangle2D.Double(p.getX()-20,p.getY()-10,40,20);
dragSize=new Rectangle2D.Double(border.getMaxX()-10,border.getMaxY()-10,10,10);
setName();
setText(name);
}
void setName()
{
name=outer.getName(this);
}
void setText(String t)
{
text=t;
}
void setLocation(Point2D p)
{
double x=p.getX();
double y=p.getY();
double w=border.getWidth();
double h=border.getHeight();
double t1=w/2;
double t2=h/2;
if(t1%10==5)
{
t1+=5;
}
if(t2%10==5)
{
t2+=5;
}
border.setFrame(x-t1, y-t2, w, h);
dragSize=new Rectangle2D.Double(border.getMaxX()-10,border.getMaxY()-10,10,10);
}
void setSize(Point2D p)
{
double x=border.getX();
double y=border.getY();
if(p.getX()-x>10&&p.getY()-y>10)
{
border.setFrame(x, y, p.getX()-x, p.getY()-y);
dragSize=new Rectangle2D.Double(border.getMaxX()-10,border.getMaxY()-10,10,10);
}
else
{
border.setFrame(x, y, 10, 10);
dragSize=new Rectangle2D.Double(x,y,10,10);
}
}
}
class Sort
{
final int LABEL=0;//标签
final int TEXT=1;//文本框
final int TEXTAREA=2;//区域
final int BUTTON=3;//按钮
final int RADIO=4;//单选
final int CHECKBOX=5;//复选
final int COMBOBOX=6;//下拉
final int SCROLLPANE=7;//JScrollPane
final int PANEL=8;//JPanel
final int PASSWORD=9;//JPasswordField
final int LIST=10;//JList
final int SPINNER=11;//JSpinner
final int SLIDER=12;//JSlider
final int PROGRESS=13;//JProgressBar
final int TABBEDPANE=14;//JTabbedPane
final int JMENUBAR=15;//
/////////////////////////////////////////////////////////////
final String[] NAME=new String[16];////名字
final String[] CMP=new String[16];/////组件名字
Sort()
{
NAME[0]="lb";
NAME[1]="tx";
NAME[2]="ta";
NAME[3]="bt";
NAME[4]="rad";
NAME[5]="chx";
NAME[6]="cbo";
NAME[7]="scr";
NAME[8]="pan";
NAME[9]="pass";
NAME[10]="list";
NAME[11]="spd";
NAME[12]="sld";
NAME[13]="pro";
NAME[14]="tab";
NAME[15]="menu";
//////////////////////////////////////////////////////////
CMP[0]="JLabel";
CMP[1]="JTextField";
CMP[2]="JTextArea";
CMP[3]="JButton";
CMP[4]="JRadioButton";
CMP[5]="JCheckBox";
CMP[6]="JComboBox";/////////////////////////下拉列表
CMP[7]="JScrollPane";
CMP[8]="JPanel";
CMP[9]="JPasswordField";
CMP[10]="JList";
CMP[11]="JSpinner";
CMP[12]="JSlider";
CMP[13]="JProgressBar";
CMP[14]="JTabbedPane";
CMP[15]="JMenuBar";
}
}
class CmpSort
{
final String[] STRINGS=new String[16];////////////////////////////
final String LABEL="标签";
final String TEXT="文本框";
final String TEXTAREA="TextArea";
final String BUTTON="按钮";
final String RADIO="单选按钮";
final String CHECKBOX="复选框";
final String COMBOBOX= "组合框";
final String SCROLLPANE="ScrollP";
final String PANEL="Panel";
final String PASSWORD="密码框";
final String LIST="ListBox";
final String SPINNER="微调按钮";
final String SLIDER="滑块";
final String PROGRESS="进度条";
final String TABBEDPANE="选项卡";
final String JMENUBAR="菜单栏";
CmpSort()
{
STRINGS[0]=LABEL;
STRINGS[1]=TEXT;
STRINGS[2]=TEXTAREA;
STRINGS[3]=BUTTON;
STRINGS[4]=RADIO;
STRINGS[5]=CHECKBOX;
STRINGS[6]=COMBOBOX;
STRINGS[7]=SCROLLPANE;
STRINGS[8]=PANEL;
STRINGS[9]=PASSWORD;
STRINGS[10]=LIST;
STRINGS[11]=SPINNER;
STRINGS[12]=SLIDER;
STRINGS[13]=PROGRESS;
STRINGS[14]=TABBEDPANE;
STRINGS[15]=JMENUBAR;
}
}
class Listeners
{
final String[] NAME=new String[7];
Listeners()
{
NAME[0]="ActionListener";
NAME[1]="FocusListener";
NAME[2]="ChangeListener";
NAME[3]="MouseListener";
NAME[4]="KeyListener";
NAME[5]="ListSelectionListener";
NAME[6]="ItemListener";
}
final int ACT=0;
final int FOC=1;
final int CHA=2;
final int MOU=3;
final int KEY=4;
final int LIS=5;
final int ITM=6;
}
class ListenerMethod
{
final String [] TEXT=new String[7];
final String HEAD="\tclass ";
ListenerMethod()
{
TEXT[0]= " implements ActionListener\n"+
"\t{\n"+
"\t\tpublic void actionPerformed(ActionEvent e)\n"+
"\t\t{\n\t\t\tSystem.out.println(111111);\n"+"\t\t}\n"+
"\t}\n";
TEXT[1]= " implements FocusListener\n"+
"\t{\n"+
"\t\tpublic void focusGained(FocusEvent e)\n"+
"\t\t{\n"+
"\t\t}\n"+
"\t\tpublic void focusLost(FocusEvent e)\n"+
"\t\t{\n"+
"\t\t}\n"+
"\t}\n";
TEXT[2]=" implements ChangeListener\n"+
"\t{\n"+
"\t\tpublic void stateChanged(ChangeEvent e)\n"+
"\t\t{\n"+"\t\t}\n"+
"\t}\n";
TEXT[3]=" implements MouseListener\n"+
"\t{\n"+
"\t\tpublic void mouseClicked(MouseEvent e)\n"+
"\t\t{\n"+
"\t\t}\n"+
"\t\tpublic void mouseEntered(MouseEvent e)\n"+
"\t\t{\n"+
"\t\t}\n"+
"\t\tpublic void mouseExited(MouseEvent e)\n"+
"\t\t{\n"+
"\t\t}\n"+
"\t\tpublic void mousePressed(MouseEvent e)\n"+
"\t\t{\n"+
"\t\t}\n"+
"\t\tpublic void mouseReleased(MouseEvent e)\n"+
"\t\t{\n"+
"\t\t}\n"+
"\t}\n";
TEXT[4]=" implements KeyListener\n"+
"\t{\n"+
"\t\tpublic void keyPressed(KeyEvent e)\n"+
"\t\t{\n"+
"\t\t}\n"+
"\t\tpublic void keyReleased(KeyEvent e)\n"+
"\t\t{\n"+
"\t\t}\n"+
"\t\tpublic void keyTyped(KeyEvent e)\n"+
"\t\t{\n"+
"\t\t}\n"+
"\t}\n";
TEXT[5]=" implements ListSelectionListener\n"+
"\t{\n"+
"\t\tpublic void valueChanged(ListSelectionEvent e)\n"+
"\t\t{\n"+
"\t\t}\n"+
"\t}\n";
TEXT[6]= " implements ItemListener\n"+
"\t{\n"+
"\t\tpublic void itemStateChanged(ItemEvent e)\n"+
"\t\t{\n\t\t\tSystem.out.println(111111);\n"+"\t\t}\n"+
"\t}\n";
}
}
@SuppressWarnings("unchecked")
class Relations
{
ArrayList<Integer> [] CMP=new ArrayList[16];
Relations()
{
CMP[0]=new ArrayList<Integer>();
(CMP[1]=new ArrayList<Integer>()).add(1);
(CMP[2]=new ArrayList<Integer>()).add(1);
(CMP[3]=new ArrayList<Integer>()).add(0);
CMP[4]=new ArrayList<Integer>();
CMP[4].add(0);
CMP[4].add(1);
CMP[4].add(2);
CMP[4].add(3);
CMP[4].add(4);
CMP[5]=new ArrayList<Integer>();
CMP[5].add(0);
CMP[5].add(1);
CMP[5].add(2);
CMP[5].add(3);
CMP[5].add(4);
CMP[6]=new ArrayList<Integer>();
CMP[6].add(6);
CMP[7]=new ArrayList<Integer>();
CMP[8]=new ArrayList<Integer>();
CMP[8].add(3);
CMP[8].add(4);
CMP[9]=new ArrayList<Integer>();
CMP[9].add(1);
CMP[10]=new ArrayList<Integer>();
CMP[10].add(5);
CMP[11]=new ArrayList<Integer>();
CMP[11].add(2);
CMP[12]=new ArrayList<Integer>();
CMP[12].add(2);
CMP[13]=new ArrayList<Integer>();
CMP[13].add(2);
CMP[14]=new ArrayList<Integer>();//"JTabbedPane";
CMP[14].add(2);
CMP[15]=new ArrayList<Integer>();//"JMenuBar";
CMP[15]=new ArrayList<Integer>();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -