IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MXML Discussion :

Perte filtre avec BasicLayout [Flex4]


Sujet :

MXML

  1. #1
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut Perte filtre avec BasicLayout
    Bonjour,

    j'ai 3 conteneurs SkinnableContainer utilisant tous le même skin. Dans ce skin, j'utilise entre autres un effet d'ombre portée avec DropShadowFilter. Ce filtre n'est malheureusement visible qu'avec un VerticalLayout ou un HorizontalLayout, pas avec un BasicLayout...

    Quelqu'un saurait t-il pourquoi ?

    Merci

  2. #2
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    Bon finalement, je n'ai pas trouvé de solution à ce que je considère être un bug flex, je suis passé par un verticalLayout à la place...

  3. #3
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    Finalement je me suis repenché un peu plus en profondeur sur le problème en simplifiant au maximum mes composants. J'ai recodé mon code afin de ne plus utiliser de skinnableContainer mais un navigatorContent (je croyais bêtement que le navigatorContent n'était pas un container ). Enfin bref, une fois ceci fait, j'avais toujours le même problème à savoir qu'en switchant sur mes onglets, je perdais mon ombre portée dessinée dans mon skin...

    Or en testant de mettre les 2 même onglets dans ma tabBar, je n'avais plus le problème. J'en suis venu à la conclusion que si on utilisait un formulaire (mon cas) il faut absolument qu'il y ai un autre formulaire dans chacun des autres onglets sinon ca foire...C'est bête et méchant mais c'est comme ca

    Exemples :

    Mon skin de mon navigatorContent :
    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
     
    <?xml version="1.0" encoding="utf-8"?>
    <s:SparkSkin xmlns:fx="http://ns.adobe.com/mxml/2009" 
    		xmlns:s="library://ns.adobe.com/flex/spark" 
    		xmlns:mx="library://ns.adobe.com/flex/mx">
     
    	<fx:Metadata>
    		[HostComponent("spark.components.NavigatorContent")]
    	</fx:Metadata>
     
    	<s:states>
    		<s:State name="normal"/>
    		<s:State name="disabled"/>
    	</s:states>	
     
    	<s:Rect 
    		top="0" left="0" right="0" bottom="0" topRightRadiusX="12" bottomLeftRadiusX="12">
     
    		<s:stroke>
    			<s:SolidColorStroke 
    				color="#000000" weight="1"/>
    		</s:stroke>
     
    		<s:fill>
    			<s:SolidColor 
    				color="0x000000" alpha="0.4"/>
    		</s:fill>
     
    		<s:filters>
    			<s:DropShadowFilter 
    				color="0x000000"
    				distance="8"
    				blurX="4" blurY="4" quality="15"
    				alpha="0.8" 
    				angle="45"/>
    	 	</s:filters>
     
    	</s:Rect>	
     
    	<s:Group id="contentGroup" 
    		left="20" right="20" top="20" bottom="20">
     
    		<s:layout>
    			<s:VerticalLayout/>
    		</s:layout>
     
    	</s:Group>
     
    </s:SparkSkin>
    Cas 1 : un formulaire dans chaque onglet

    Mon onglet "connexion"
    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
     
    <?xml version="1.0" encoding="utf-8"?>
    <s:NavigatorContent xmlns:fx="http://ns.adobe.com/mxml/2009" 
    					xmlns:s="library://ns.adobe.com/flex/spark" 
    					xmlns:mx="library://ns.adobe.com/flex/mx" 
    					xmlns:composants="classesAS.composants.*"
    					skinClass="skins.MyNavigatorContentSkin">
     
    	<s:VGroup 
    		width="100%" 
    		horizontalAlign="center">
     
    		<mx:Form>
    			<mx:FormItem>
    				<s:Label text="connexion" />
    			</mx:FormItem>
    		</mx:Form>
     
    		<s:Button label="Button"/>
    		<s:Button label="Button2"/>
     
    	</s:VGroup>
     
    </s:NavigatorContent>
    Mon onglet "inscription"
    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
     
    <?xml version="1.0" encoding="utf-8"?>
    <s:NavigatorContent xmlns:fx="http://ns.adobe.com/mxml/2009" 
    					xmlns:s="library://ns.adobe.com/flex/spark" 
    					xmlns:mx="library://ns.adobe.com/flex/mx" 
    					xmlns:composants="classesAS.composants.*"
    					skinClass="skins.MyNavigatorContentSkin">
     
    	<s:VGroup 
    		width="100%" 
    		horizontalAlign="center">
     
    		<mx:Form>
    			<mx:FormItem>
    				<s:Label text="inscription" />
    			</mx:FormItem>
    		</mx:Form>
     
    		<s:Button label="Button"/>
    		<s:Button label="Button2"/>
     
    	</s:VGroup>
     
    </s:NavigatorContent>
    -> ca marche

    Cas 2 : si je retire 1 seul formulaire d'un des 2 onglet
    -> ca marche pas

    Cas 3 : aucun formulaire présent dans les 2 onglets
    -> ca marche


    PS: je retire le tag résolu si jamais quelqu'un a été confronté à un problème similaire

  4. #4
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    Je pensais avoir trouvé...mais non !
    Lorsque les formulaires sont différents, le problème ressurgit...

    J'y comprends rien de rien

    EDIT: le problème a l'air de survenir en fait lorsque mes navigatorContent varient de hauteur entre 2 onglets. Je vais essayer de voir si je pourrais pas faire un redraw ou quelque chose comme ca lors de l'event creationComplete...

  5. #5
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    Hum...je crois que j'ai fais mon boulet

    Depuis le temps que j'y suis, je viens seulement de comprendre que l'ombre portée n'est pas comprise dans la taille du rectangle donc un décalage right="X" sur mon rectangle où s'applique mon ombre portée résout mon problème

    Le seul truc que je comprends pas et qui m'a sans doute influencé en erreur (on se rattrape comme on peut) c'est que j'obtient bien mon ombre portée sur mon premier onglet avec un right="0" mais bon pas grave, mon problème est résolu


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Résultat filtré avec CONTAINS ?
    Par mimicracra dans le forum Oracle
    Réponses: 17
    Dernier message: 17/07/2006, 15h11
  2. Filtre avec zone de liste déroulante
    Par petitloup71 dans le forum Access
    Réponses: 10
    Dernier message: 08/07/2006, 12h21
  3. Perte réseau avec carte WIFI
    Par Mut dans le forum Dépannage et Assistance
    Réponses: 9
    Dernier message: 24/06/2006, 11h25
  4. Filtre Avec Password
    Par @rkane dans le forum Sécurité
    Réponses: 7
    Dernier message: 15/06/2006, 22h31
  5. Recherche et filtre avec un dynaset
    Par mat75019 dans le forum Access
    Réponses: 10
    Dernier message: 10/04/2006, 19h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo