PhilFlash

DataGrid et IconCellRenderer v1.2

Updated Flash 8

Cet exemple permet de gérer des icônes dans un DataGrid.

Si la taille de la colonne est trop petite, l'icône est rendu invisible.

Obtenir les sources dgiconrd.zip for Flash 8 (303 Ko)

Obtenir les sources dgiconrd.zip for MX2004 (303 Ko)

Explication

On utilise une classe IconCellRenderer.as qui se veut "générique". Le nom du symbole à afficher est calculé par une fonction iconFunction (qui tient compte de la colonne et de la valeur de la cellule).

Les images/icônes doivent posséder une propriété Linkage avec un Identifier. Votre iconFunction doit retourner cet Identifier sous forme de string.

Exemple d'utilisation

Déclarer un DataGridColumn de la façon suivante :

import mx.controls.gridclasses.DataGridColumn;

var gc2 = new DataGridColumn("country");
gc2.width = 100;
gc2.headerText = "Country:";
gc2.cellRenderer = "IconCellRenderer";
gc2.iconFunction = contactIconFunction;

Déclarer la fonction contactIconFunction de la façon suivante :

contactIconFunction = function (itemObj:Object, columnName:String) {
    if (itemObj == undefined || columnName == undefined) {
        return;
    }
    switch (columnName) {
        case "country":
            var country = itemObj.country;
            return (country == undefined ? undefined : "flag_"+country);
        break;
    }
}

Version

version 1.2 - 2 Fev 2006 : updated for Flash 8

version 1.1 - 22 Jan 2004 : correction d'un bug de ré-affichage

xhtml   css   cc   508   aaa
Me connaître  |  Me contacter