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

Dart Discussion :

Créer un bouton avec argument text


Sujet :

Dart

  1. #1
    Membre actif
    Créer un bouton avec argument text
    Bonjour,

    j'ai ce code qui crée un bouton et je voudrais lui attribué comme texte le deuxième élément de la liste, "Word2".
    Pourriez-vous m'aider, svp ?

    https://dartpad.dartlang.org/flutter

    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
    import 'package:flutter/material.dart';
    //import 'package:flutter/gestures.dart';
     
    void main() {
      runApp(MyApp());
    }
     
     
    class Boutons {
      String textOFF;
      String textON;
      bool isPressed;
     
      Boutons(this.textOFF, this.textON, this.isPressed);
     
    }
     
     
    class MyApp extends StatelessWidget {
      // This widget is the root of your application.
      @override
      Widget build(BuildContext context) {
        return MaterialApp(
          title: 'Flutter Demo',
          theme: ThemeData(
            primarySwatch: Colors.blue,
            visualDensity: VisualDensity.adaptivePlatformDensity,
          ),
          home: MyHomePage(title: 'Flutter Demo Home Page'),
        );
      }
    }
     
    class MyHomePage extends StatefulWidget {
      MyHomePage({Key key, this.title}) : super(key: key);
      final String title;
      @override
      _MyHomePageState createState() => _MyHomePageState();
    }
     
    class _MyHomePageState extends State<MyHomePage> {
      // création des différents labels
      // Je collectionne les timbres depuis mon enfance
      List<String> _mysentence     = ["Word1", "Word2", "Word3"];
     
      // définition couleurs
      var pressedBackColor = Colors.red;
      var defaultBackColor = Colors.lightGreen;
     
      void onPressed(Boutons obj) {
        setState(() {
        });
      }
     
     
      List<Boutons> boutons = [
        Boutons('Bouton', 'Clicked #1', false),
      ];
     
     
      @override
      Widget build(BuildContext context) {
     
        return Scaffold(
          appBar: AppBar(
            title: Text(widget.title),
          ),
          body: Center(
            child: Column(
              //mainAxisAlignment: MainAxisAlignment.center,
                children: <Widget>[
                  Wrap(
                    children: <Widget>[
                      //for (int i = 0; i < _mysentence.length; i++)   
     
                          ..._createButton(context, boutons)      
     
                    ],                
                  ),
                ]),
          ),
        );
      }
     
      List<Widget> _createButton(BuildContext context, List<Boutons> boutons) {
        return boutons.map((Boutons btn) {
          var tColor = btn.isPressed ? Colors.white : Colors.black;
          var bColor = btn.isPressed ? pressedBackColor : defaultBackColor;
          var text = btn.isPressed ? btn.textON : btn.textOFF;
          return RaisedButton(
            textColor: tColor,
            color: bColor,
            child: Text(text, style: TextStyle(fontSize: 20)),
            onPressed: () => onPressed(btn),
          );
        }).toList();
      }
    }

  2. #2
    Membre actif
    J'ai ce bouton :

    Code dart :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
                        RaisedButton(
                          textColor: Colors.red,
                          color: Colors.blue,
                          child: Text("word", style: TextStyle(fontSize: 20)),
                          onPressed: () => myf(),
                        )


    Je voudrais que ma fonction myf() change le texte du bouton.

###raw>template_hook.ano_emploi###