超級強大的DataGrid組件

Clare 13年前發布 | 2K 次閱讀 色彩工具

DataGrid 組件允許用戶顯示和操作多列數據。

當 DataGrid 實例從單擊或 Tab 鍵切換中獲得焦點時,您可以使用以下按鍵來控制它:

</tr>

</tr>

</tr>

</tr>

</tr>

</tr>

</tr>

</tr>

</tr> </tbody> </table>

以下示例演示數據網格的屬性。

從"庫"面板中拖動相關組件到舞臺(或直接通過 ActionScript 代碼創建組件實例),并對實例命名。

在主時間軸中選擇第一幀,打開"動作"面板,然后輸入以下代碼:

my_dg.setColumnNames(["id","name","score"]);
my_dg.addItem({id:0,name:"Clark",score:3135});
my_dg.addItem({id:1,name:"Bruce",score:403});
my_dg.addItem({id:2,name:"Peter",score:25});

通過設置 CellRenderer 創建類似 List 的 DataGrid。

首先,創建數據網格的行渲染器 DataGridRowRenderer 類(繼承于 ListCellRenderer)。

package {
    import flash.text.TextField;
    import shinater.swing.DataGrid;
    public class DataGridRowRenderer extends ListCellRenderer {
        public override function setSize(width:Number, height:Number):void {
            _width = width;
            _height = height;
            repaint();
        }
        public override function repaint():void {
            var dataGrid:DataGrid = DataGrid(getOwner());
            var x:Number = textField.x;
            for (var i:int = 0,columnCount:uint = dataGrid.getColumnCount(); i<columnCount; i++) {
                var txt:TextField;
                if (i == 0) {
                    txt = textField;
                } else {
                    var n:String = "textField" + i;
                    txt = getChildByName(n) as TextField;
                    if (txt == null) {
                        txt = new TextField();
                        txt.name = n;
                        addChild(txt);
                    }
                    txt.defaultTextFormat = textField.defaultTextFormat;
                    txt.x = x;
                    txt.y = textField.y;
                    txt.height = textField.height;
                }
                txt.text = getData()[dataGrid.getColumnName(i)];
                txt.width = dataGrid.getColumnWidth(i);
                x += txt.width;
            }
            skin.width = _width;
            skin.height = _height;
            if (focusRectSkin != null) {
                focusRectSkin.width = _width;
                focusRectSkin.height = _height;
            }
        }
    }
}

同上例,在主時間軸中選擇第一幀,打開"動作"面板,然后輸入以下代碼:

my_dg.setCellRenderer(DataGridRowRenderer);
my_dg.setColumnNames(["id","name","score"]);
my_dg.addItem({id:0,name:"Clark",score:3135});
my_dg.addItem({id:1,name:"Bruce",score:403});
my_dg.addItem({id:2,name:"Peter",score:25});  資料來源于:http://原網站已經失效/FlashSwing/Help/DataGrid.html
 本文由用戶 Clare 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!
寫博客

博客分類

推薦閱讀

超級強大的DataGrid組件

DataGrid 組件允許用戶顯示和操作多列數據。 當 DataGrid 實例從單擊或 Tab 鍵切換中獲得焦點時,您可以使用以下按鍵來控制它: 以下示例演示數據網格的屬性。 從"庫"面板中拖動...

超級強大的DataGrid組件

DataGrid 組件允許用戶顯示和操作多列數據。 當 DataGrid 實例從單擊或 Tab 鍵切換中獲得焦點時,您可以使用以下按鍵來控制它: 鍵 說明 向下箭頭 如果正在編輯單元格,插入點將...

分享一個強大的混合器組件FlashSwing的ColorMixer 組件

ColorMixer 能夠使用戶在 RGB 和 HSB 模式下創建和編輯顏色,或直接輸入十六進制的顏色值。 以下示例演示將混色器的初始顏色設置為紅色,以及如何編輯顏色。 從"庫"面板中拖動相關組...

強大的純JS數據圖工具-flot

發現一個在網頁中繪制數據圖, 如曲線圖, 柱狀圖的純 JavaScript 工具: flot . 極度推薦啊! 有圖和代碼為證: *代碼附后* 以前知道的工具有 Open Flash Chart...
說明
向下箭頭 如果正在編輯單元格,插入點將移到單元格文本的末尾。如果單元格不可編輯,則向下箭頭處理選區的方式與 List 組件相同。
向上箭頭 如果正在編輯單元格,插入點將移到單元格文本的開頭。如果單元格不可編輯,則向上箭頭處理選區的方式與 List 組件相同。
向右箭頭 如果正在編輯單元格,插入點將向右移動一個字符。如果單元格不可編輯,內容向左移動一水平滾動行。
向左箭頭 如果正在編輯單元格,插入點將向左移動一個字符。如果單元格不可編輯,內容向右移動一水平滾動行。
Enter 如果正在編輯單元格,則會提交更改,并且插入點將移到同一列中單元格的下一行。
Shift+Enter 如果正在編輯單元格,則會提交更改,并且插入點將移到同一列中單元格的上一行。
Tab 如果下一個單元格可編輯,將焦點移動到下一個單元格,并選中該單元格的所有文本;否則,將焦點移到下一個對象。
Shift+Tab 如果前一個單元格可編輯,將焦點移動到前一個單元格,并選中該單元格的所有文本;否則,將焦點移到前一個對象。
  • sesese色