DISPLAY ARRAY指令使用在表格資料的呈現、樹狀資料的呈現兩種情況下。
由於樹狀結構無法透過 INPUT ARRAY 進行維護 (無法開放給使用者畫線) ,因此在這一個版本中,折衷的在 DISPLAY 的過程中挖開欄位給使用者進行簡單的資料輸入。
以下個別探討一下各控制區塊的用途:
資料用:
- ON FILL BUFFER
- ON EXPAND
- ON COLLAPSE
控制用:
- BEFORE DISPLAY / AFTER DISPLAY
- BEFORE ROW / AFTER ROW
交談用:
- ON ACTION / ON IDLE / ON KEY
- ON APPEND :會跑到畫面最下方,開出一行新的空間,並且在畫面上出現輸入方格,使用者可以在方格內進行資料輸入
- ON INSERT :會將畫面上的資料往下擠一個空間出來,並且在畫面上出現輸入方格,使用者可以在方格內進行資料輸入
- ON UPDATE :會將畫面上本筆資料用 edit 的形式變成可以輸入的樣態
- ON DELETE:會協助刪除節點及全域變數內的資料
拖拉用:這部分應該是歸類在『交談用』,使用前需要先定義 ui.DragDrop 物件後才可以使用 (下方以 dnd 取代)
- ON DRAG_START (dnd)
定義拖動資料起始時應該要做的事情,例如確認資料位置,或是資料拖拉應用的模式*
應用模式設置使用 dnd.setOperation( STRING ) ,其中參數可傳入三種
copy (複製模式) / move (移動模式) / NULL (取消本次的拖拉動作)
如果同時需要支援兩種模式,可以用 dnd.addPossibleOperation ( STRING ) 的指令加入模式
- ON DRAG_OVER (dnd)
通常在 ON DRAG_OVER 或 ON DRAG_ENTER 時,若確認沒有拖到東西 (目標) ,就可以使用 dnd.setOperation( NULL ) 來結束這一次的拖拉
- ON DRAG_ENTER (dnd)
- ON DROP (dnd)
拖拉到另一個位置上後,放開滑鼠時會觸發此『完工』的區塊。如果是處理樹狀資料,可以在此區塊內呼叫 dnd.dropInternal( ) ,系統會幫你將資料移到正確的樹狀節點上。
- ON DRAG_FINISH (dnd)
此區塊是拖拉的最後一個結束區塊,通常是做最後的收尾處理。如資料被 move 離開後樹狀節點應該收闔或額外處理之類的。可以在此區塊內使用 dnd.getOperation() 來探知現在是使用哪種模式。
其他資源:
- DIALOG class
- fgl control functions
沒有留言:
張貼留言