Comunidad de diseño web y desarrollo en internet online

Compo datagrid y el cursor

Citar            
MensajeEscrito el 14 Mar 2005 02:03 pm
Hola,
tengo un datagrid y un List;
cuando el cursor va en el component , no veo la mano;
alguien sabe como hacer para ver la mano del cursor ?

gracias
Yaya

Por yaya

6 de clabLevel



 

firefox
Citar            
MensajeEscrito el 14 Mar 2005 03:32 pm
Prueba con nombreComponente.onRollOver = function(){}

Da igual que no haga nada la función, la cuestión es que detecte el componente como un botón. No he encontrado otra manera de hacerlo.

Deu!! ^^

Por Elecash

Claber

8126 de clabLevel

37 tutoriales
19 articulos
13 ejemplos

  Bastard Operators From Hell Desarrollador de GAIA Premio_Secretos Héroes

BarnaCity

clabbrowser
Citar            
MensajeEscrito el 14 Mar 2005 04:43 pm
Si ponen lo del RollOver, dejaria de funcionar los eventos del Mouse en el componente List(el dataGrid, tiene todos los eventos del list).

Lo mejor en este caso es que veas este tuto de ele:
Este

Y veas como meter MovieClips y ha esos les puedes aplicar el RollOver, sin que afecte tu lista.

Saludos :wink:

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

clabbrowser
Citar            
MensajeEscrito el 14 Mar 2005 05:20 pm

Por yaya

6 de clabLevel



 

msie
Citar            
MensajeEscrito el 14 Mar 2005 06:00 pm
Podrias poner tu codigo donde cargas la imagen en el datagrid y le asignas la accion de que al clickear se despliegue la imagen.

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

clabbrowser
Citar            
MensajeEscrito el 14 Mar 2005 06:38 pm

import mx.controls.Button;
import mx.controls.Alert;
import mx.controls.ProgressBar;
import mx.controls.TextArea;
import mx.controls.Label;
import mx.controls.ComboBox;
import mx.controls.List;
import mx.controls.Loader;
import mx.controls.DataGrid;
import mx.data.components.DataSet;
import mx.data.components.XMLConnector;
import mx.data.components.datasetclasses.DataSetError;
import mx.data.to.ValueListIterator;
import mx.utils.Delegate;



class MainForm extends mx.screens.Form {

public var type_con:XMLConnector;
public var immoByType_con:XMLConnector;
private var urlImmoByType:String;
public var type_cb:ComboBox;
public var immo_li:List;
public var prestation_ds:DataSet;
public var items_dg:DataGrid;
// pour image
public var image_ds:DataSet;
public var imageLoader:Loader;
public var imageProgress:ProgressBar;
public var imageLabel:Label;

public var zoomImageButton:MovieClip;
private var dataLoaded:Boolean = false;


// Constructor
public function MainForm() {}
// ----- -----
public function init():Void {
super.init();
addEventListener("reveal", onReveal);
}

// ----- -----
public function onLoad(obj:Object):Void {
dataLoaded = false;
setVisible(false);

// --
type_con.addEventListener("status",this);
type_con.addEventListener("result",this);
immoByType_con.addEventListener("status",this);
immoByType_con.addEventListener("result",Delegate.create(this, doResultPrestation));
prestation_ds.addEventListener("iteratorScrolled",Delegate.create(this, doChangePrestation));
// On force une mise a jour interface
prestation_ds.addEventListener("afterLoaded",Delegate.create(this, doAfterLoadedPrestation));

// --
type_cb.addEventListener("change", Delegate.create(this, doChangeType));


// ---
initStyleGrid(items_dg);
initColumnGrid(items_dg);
items_dg.addEventListener("cellPress", Delegate.create(this, doCellPress));

// --
imageLoader.addEventListener("complete", Delegate.create(this, doImageOnComplete));

zoomImageButton.onRelease = zoomImageOnRelease; // -------------------------------------------------------si je met rollover cela marche (le 1er)
zoomImageButton.owner = this;

// -- pour image
//imageLoader.visible = false;
imageProgress.visible = false;

}

// ----- -----
public function onReveal(obj:Object):Void {
// Save URL
if (urlImmoByType == undefined) {
urlImmoByType = immoByType_con.URL;
}


if (!dataLoaded) {
getImmoType();
}
}

// ----- -----
public function getImmoType():Void {
rootForm.enableProgress(true, "Chargement...");
type_con.trigger();
}


// ----- -----
public function doChangeType(evt:Object):Void {
//
var index = evt.target.selectedIndex;
var idType = evt.target.selectedItem.data;
getPrestationByType(idType);
}

public function getPrestationByType(value:Number):Void {
rootForm.enableProgress(true, "Recherche...");
var newURL = urlImmoByType + "?it=" + value;
immoByType_con.URL = newURL;
immoByType_con.trigger();
}


// ----- Resultats sur XMLConnector -----
public function status(stat:Object):Void {
// Erreur sur code PHP
if (stat.code != "StatusChange") {
var error = "Erreur de l'application : " + stat.target._name + "/" + stat.code + "/" + stat.data.faultcode + "/" + stat.data.faultstring;
rootForm.enableProgress(false);
rootForm.setStatusMessage("<error>Impossible de se connecter au serveur.</error>");
errorConnector(error);
return;
}

}
private function errorConnector(message:String):Void {
var alertWindow:Alert = Alert.show( message,
"Erreur de l'application ",
Alert.OK, this);
alertWindow.startDragging = function() {};
rootForm.setLocationRelativeTo(alertWindow, null);
}

// -- --
public function result():Void {
rootForm.enableProgress(false);
dataLoaded = true;

// Force selection premier element
type_cb.selectedIndex = 1;
type_cb.dispatchEvent({type:"change"});
}

public function doResultPrestation():Void {
//trace(" doResultPrestation ");
rootForm.enableProgress(false);
}


// ----- -----
public function doAfterLoadedPrestation(eventObj:Object):Void {

var dataset = prestation_ds;
var len = dataset.length;
if (len == 0) {
imageLoader.visible = false;
imageProgress.visible = false;

} else {
imageLoader.visible = true;
imageProgress.visible = true;
}
doBuildDataGrid();
doChangePrestation(eventObj);
}


public function doChangePrestation(eventObj:Object):Void {
var dataset = eventObj.target;
var selectedIndex = dataset.selectedIndex;
var currentItem = dataset.currentItem;
// Pour le futur
//trace(" doChangePrestation ="+selectedIndex+" image="+currentItem.image);


}
// ----- -----
public function doBuildDataGrid():Void {
var dataset = prestation_ds;
var len = dataset.length;
var myDP:Array = new Array();
var maxRow = Math.ceil(len/3);
var preCode = prestation_ds.currentItem.label;

for (var i=0; i<maxRow; i++) {
// on passe le dataset pour pouvoir l'accèder dans cellPress
var myData = {item0:0, item1:0, item2:0, dataset:prestation_ds };
for (var j = 0; j < 3; j++) {
var indice = (i*3)+j;
if (indice < len) {
myData["item"+j] = preCode+""+i+":"+j;
}
else {
myData["item"+j] = "";
}
}
myDP.addItem(myData);
}
items_dg.dataProvider = myDP;

if (len != 0) {
items_dg.selectedIndex = 0;
items_dg.dispatchEvent({type:"change"});
}

}

// ----- -----
public function zoomImageOnRelease():Void {
// Warning : getURL a ce niveau ne fonctionne pas ???
var owner = this["owner"];
owner.zoomImage();
}

public function zoomImage():Void {
var dataset = prestation_ds;
var currentItem = dataset.currentItem;
var URL:String;
URL = rootForm.siteURL + currentItem.zoom;

if (currentItem != undefined) {
getURL(URL,"_blank");
}
}

// ----- -----
public function doImageOnComplete(eventObj:Object):Void {
//trace(" doImageOnComplete ");
imageProgress.visible = false;
}

// ----- -----
public function initStyleGrid(datagrid:DataGrid):Void {

datagrid.setRowHeight(54);
datagrid.setStyle("hGridLines", false);
datagrid.setStyle("vGridLines", false);
datagrid.setStyle("useRollOver", false);
datagrid.setStyle("selectionColor", 0xFFFFFF);
datagrid.showHeaders = false;
datagrid.setStyle("borderStyle", "none");
datagrid.vScrollPolicy = "auto";
}

// ----- -----

public function initColumnGrid(datagrid:DataGrid):Void {
var newColumn:mx.controls.gridclasses.DataGridColumn;


datagrid.editable = false;
datagrid.multipleSelection = false;
datagrid.removeAllColumns();
var totalWidth:Number = 0;

newColumn = new mx.controls.gridclasses.DataGridColumn("item0");
newColumn.headerText = "item0";
newColumn.editable = false;
newColumn.resizable = true;
newColumn.sortable = false;
newColumn.width = 54;
newColumn.cellRenderer = "PrestationRenderer";
datagrid.addColumn(newColumn);
totalWidth += newColumn.width;

newColumn = new mx.controls.gridclasses.DataGridColumn("item1");
newColumn.headerText = "item1";
newColumn.editable = false;
newColumn.resizable = true;
newColumn.sortable = false;
newColumn.width = 54;
newColumn.cellRenderer = "PrestationRenderer";
datagrid.addColumn(newColumn);
totalWidth += newColumn.width;

newColumn = new mx.controls.gridclasses.DataGridColumn("item2");
newColumn.headerText = "item2";
newColumn.editable = false;
newColumn.resizable = true;
newColumn.sortable = false;
newColumn.width = 54;
newColumn.cellRenderer = "PrestationRenderer";
datagrid.addColumn(newColumn);
totalWidth += newColumn.width;
}

// ----- -----
public function doCellPress(eventObj:Object):Void {
var datagrid = eventObj.target;
var currentItem = datagrid.selectedItem;
var dataset = currentItem.dataset;

// On retrouve indice dans premier dataset
// et on selectionne cet indice
var ligne = eventObj.itemIndex;
var colonne = eventObj.columnIndex;

var selectedIndex = (ligne*3)+colonne;
dataset.selectedIndex = selectedIndex;
}
// ----- -----
// replaces the from string to to string and returns the modified
function replaceString(mainStr:String, findStr:String, replaceStr:String):String {
return (mainStr.split(findStr).join(replaceStr));
}

}


toma, eso es mi codigo y si alguien puede "help me"
(pardomane soy frances ^_^)

Yaya

Por yaya

6 de clabLevel



 

firefox
Citar            
MensajeEscrito el 14 Mar 2005 07:09 pm
A mi me funciono como te dije, mira aqui esta como modifique el archivo del tutorial, solo le agregue el onRollOver y va bien, pero debes aplicarlo a la imagen y no ha todo el componente:

www.danonino.org/ejemplos/cellrenderer.zip

Tu podrias probar algo como:

Código :

 public function doImageOnComplete(eventObj:Object):Void {
//trace(" doImageOnComplete ");
imageProgress.visible = false;
zoomImageButton.useHandCursor=true;
}


Saludos.

French: Beaucoup de chance, reçoit une salutation de ma partie, tout
problème ne doutez pas en demander dans le forum :wink:

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

clabbrowser
Citar            
MensajeEscrito el 14 Mar 2005 10:02 pm
Jus... que buena idea javierdaniel, no se me habia ocurrido... XD

Deu!! ^^

Por Elecash

Claber

8126 de clabLevel

37 tutoriales
19 articulos
13 ejemplos

  Bastard Operators From Hell Desarrollador de GAIA Premio_Secretos Héroes

BarnaCity

firefox
Citar            
MensajeEscrito el 15 Mar 2005 02:43 am
Dailion?

Por Freddie

BOFH

53 tutoriales
597 articulos
43 ejemplos

Genero:Masculino   Admin

Conserje de Cristalab

clabbofh

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.