← Tous les articles

Snippet YAML : Ajustement de valeur incrémentielle

Permet d’ajuster une valeur en cliquant sur des boutons pour l’incrémenter via une variable de contexte. Il est possible de personnaliser les incréments en modifiant la source de la galerie. Il est possible de modifier la valeur manuellement dans le TextInput

Voir le code
YAML
- Container1:
    Control: GroupContainer@1.3.0
    Variant: AutoLayout
    Properties:
      ContentLanguage: ="" // Snippet Created by David ZOONEKYNDT - https://dz13n.wordpress.com/ - https://www.linkedin.com/in/david-zoonekyndt/
      Height: =91
      LayoutAlignItems: =LayoutAlignItems.Center
      LayoutDirection: =LayoutDirection.Horizontal
      LayoutGap: =10
      Width: =873
      X: =180
      Y: =124
    Children:
      - Label_Valeur:
          Control: Label@2.5.1
          Properties:
            Align: =Align.Right
            Text: ="Valeur"
      - TextInput_Valeur:
          Control: Classic/TextInput@2.3.2
          Properties:
            Default: =ctxValeur
            FillPortions: =1
            Format: =TextFormat.Number
            LayoutMinWidth: =100
            OnChange: =UpdateContext({ctxValeur:ctxValeur+Value(Self.Text)})
      - Gallery_Increment:
          Control: Gallery@2.15.0
          Variant: Vertical
          Properties:
            AlignInContainer: =AlignInContainer.Center
            Height: =80
            Items: =[-10,-5,-1,-0.1,-0.05,0.05,0.1,1,5,10]
            LayoutMinHeight: =40
            LayoutMinWidth: =40
            TemplateSize: =32
            WrapCount: =5
          Children:
            - Button_Increment:
                Control: Button@0.0.45
                Properties:
                  Appearance: ='ButtonCanvas.Appearance'.Primary
                  BasePaletteColor: =If(ThisItem.Value<0 ,Color.LightCoral ,Color.CadetBlue)
                  BorderStyle: =BorderStyle.Solid
                  FontSize: =13
                  Height: =30
                  OnSelect: =UpdateContext({ctxValeur:ctxValeur+ThisItem.Value})
                  Text: |-
                    =With({_V:ThisItem.Value},
                    Text(_V, If(_V>=0,"+0.0#","0.0#")))
                  Width: =Parent.TemplateWidth-Parent.TemplatePadding


Ce snippet fait partie de la collection Snippets YAML. Retrouvez tous les snippets avec le tag Snippet.

Échanger autour de cet article

Les commentaires utilisent Giscus et GitHub Discussions. Le service externe n’est contacté qu’après activation.