Bonjour,
Je débute en Flex. Voici mon problème : j'ai créé un ToolTip personnalisé dont voici le code
Cela fonctionne sauf que dans la creation du tooltip (PanelToolTip.mxml) j'ai mis une valeur du dataprovider en dur et que j'aimerais qu'elle soit paramétrable. Par exemple à la place de {contenuService.lastResult.accueil.identification.donnee}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101 <?xml version="1.0"?> <!-- tooltips/ToolTipComponents/PanelToolTip.mxml --> <mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:flexer="com.flexer.*" implements="mx.core.IToolTip" alpha=".8" borderThickness="2" backgroundColor="0xCCCCCC" dropShadowEnabled="true" borderColor="black" borderStyle="solid" minWidth="400" creationComplete="contenuService.send();"> <mx:Script> <![CDATA[ [Bindable] public function get text():String { return null; } public function set text(value:String):void { } ]]> </mx:Script> <mx:HTTPService id="contenuService" url="data/contenu.xml" resultFormat="e4x"/> <mx:Form width="100%"> <mx:Repeater id="rp" dataProvider="{contenuService.lastResult.accueil.identification.donnee}"> <mx:FormItem data="{rp.currentItem}" label="{rp.currentItem.terme}" width="100%"> <flexer:AutoResizeableTextArea id="respText" x="10" y="219" width="222" autoResize="true" text="{rp.currentItem.definition}"/> </mx:FormItem> </mx:Repeater> </mx:Form> </mx:VBox> <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()"> <mx:Script> <![CDATA[ import mx.rpc.events.FaultEvent; import mx.rpc.events.ResultEvent; import mx.events.ToolTipEvent; import mx.managers.ToolTipManager; import mx.controls.Alert; import mx.rpc.http.HTTPService; import ToolTipComponents.PanelToolTip; private function init():void { /* génération du tooltip HTML */ ToolTipManager.showDelay = 0; ToolTipManager.hideDelay = Infinity; /* requete sur le fichier coordonnees.xml */ coordonnees.send(); contenu.send(); } private function createCustomTip(event:ToolTipEvent):void { var ptt:PanelToolTip = new PanelToolTip(); event.toolTip = ptt; } ]]> </mx:Script> <mx:HTTPService id="contenu" url="data/contenu.xml" resultFormat="e4x"/> <mx:HTTPService id="coordonnees" url="data/coordonnees.xml" resultFormat="e4x"/> <mx:VBox width="100%"> <mx:HBox backgroundColor="white" width="100%"> <!-- LOGO --> <mx:Image source="img/logo.png" /> <mx:Label text="Aide pour l'administrateur" fontSize="18" paddingTop="22" /> </mx:HBox> <!-- BARRE DE MENU HORIZONTAL --> <mx:TabNavigator id="menuHorizontal" width="100%"> <mx:Panel minHeight="700" width="100%" label="PREAMBULE"> <mx:Label id="preambule" height="100%" width="100%" htmlText="{contenu.lastResult.preambule}" textIndent="0"/> </mx:Panel> <mx:Panel title="Vous êtes ici : Accueil" label="ACCUEIL" layout="absolute"> <mx:Image x="150" y="0" source="img/accueil.jpg" /> <mx:Canvas id="identification" borderColor="red" borderStyle="solid" borderThickness="3" x="{coordonnees.lastResult.accueil.identification.x}" y="{coordonnees.lastResult.accueil.identification.y}" width="{coordonnees.lastResult.accueil.identification.width}" height="{coordonnees.lastResult.accueil.identification.height}" toolTip=" " toolTipCreate="createCustomTip(event)"/> </mx:Panel> </mx:TabNavigator> </mx:VBox> </mx:Application>
ce puisse être {contenuService.lastResult.accueil.messagerie.donnee}
Merci par avance.
Cordialement.
Partager