?? flowpane.java~163~
字號:
package com.wiziflow.gui;import javax.swing.*;import java.awt.event.*;import java.awt.*;/** * 工作流定義區(qū) */public class FlowPane extends JLayeredPane { private StartBean start=new StartBean(); private EndBean end=new EndBean();; private ActivityBean activity = null; int i=1; public FlowPane() { super(); try { jbInit(); } catch(Exception e) { e.printStackTrace(); } } private void jbInit() throws Exception { this.addMouseListener(new java.awt.event.MouseAdapter() { public void mousePressed(MouseEvent e) { this_mousePressed(e); } }); } void this_mousePressed(MouseEvent e) { switch(Mouse.STATE) { case Mouse.NORMAL://普通鼠標 //如果點中線,彈出對話框 break; case Mouse.ACTIVITY://活動鼠標 activity=new ActivityBean(); activity.setText("活動"+i); //初始位置在鼠標的周圍。鼠標位于中間 activity.setLocation(e.getX()-activity.getWidth()/2,e.getY()-activity.getHeight()/2); add(activity); activity.requestFocus(); Mouse.setState(Mouse.NORMAL); i++; //開始圖標只能有一個。重置鼠標狀態(tài) break; case Mouse.START:{//開始鼠標 if(getIndexOf(end)==-1) {//表明該控件仍然沒有 start.setLocation(e.getX()-start.getWidth()/2,e.getY()-start.getHeight()/2); add(start); start.requestFocus(); }else{ JLabel message=new JLabel("警告:不能重復加入開始圖標!"); message.setFont(new java.awt.Font("宋體", 0, 12)); JOptionPane.showMessageDialog(this,message); } Mouse.setState(Mouse.NORMAL); break; } case Mouse.END:{//結束鼠標 if(getIndexOf(end)==-1) {//表明該控件仍然沒有 end.setLocation(e.getX()-end.getWidth()/2,e.getY()-end.getHeight()/2); add(end); end.requestFocus(); }else{ JLabel message=new JLabel("警告:不能重復加入結束圖標!"); message.setFont(new java.awt.Font("宋體", 0, 12)); JOptionPane.showMessageDialog(this,message); } Mouse.setState(Mouse.NORMAL); break; } } }// public void paint(Graphics g) {// //畫線// super.paint(g);// }}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -