Bonjour à tous,
J'ai réalisé une skin toute bête afin d'avoir toujours le même type de fenêtre dans mon application AIR.
Cette skin intégre entre autre un bouton de fermeture.
Ledit bouton de fermeture est géré dans ma classe "NativeTitleWindow" qui se présente de la maniére suivante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <s:Skin xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:s="library://ns.adobe.com/flex/spark" > <fx:Metadata> [HostComponent("fr.ui.windowSkin.NativeTitleWindow")] </fx:Metadata> .... (la suite a moins d'intéret)
Or sachant que dans ma nouvelle fenêtre qui a comme skinClass MaSkin, je souhaite récupérer le fait de fermer cette fenêtre je lui ai ajouté au chargement (oncreationcomplete) un this.addEventListener("myEvent", onMyEvent);
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 .... public class NativeTitleWindow extends TitleWindow { protected override function partAdded(partName:String, instance:Object):void { switch(partName) { case 'closeButton': { EventDispatcher(instance).addEventListener(MouseEvent.CLICK, closeWindow); break; } default: { super.partAdded(partName,instance); break; } } } protected override function partRemoved(partName:String, instance:Object):void { super.partRemoved(partName, instance); switch(partName) { case 'closeButton': { EventDispatcher(instance).removeEventListener(MouseEvent.CLICK,closeWindow); break; } default: { break; } } } protected function closeWindow(e:MouseEvent):void { stage.nativeWindow.dispatchEvent(new Event("myEventClose", true)); stage.nativeWindow.close(); } } }
Mon probléme est que je ne rentre jamais dans onMyEvent.
L'un de vous peut-il m'aider car je tourne, je tourne mais ne trouve rien.
Merci par avance.
Partager