Code Flutter Commenté
Code Flutter avec Commentaires
import 'package:flutter/material.dart';
import 'secondPage.dart';
// Point d'entrée de l'application
void main() {
runApp(MyApp());
// Classe principale de l'application
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
// Retourne l'application MaterialApp avec la page d'accueil définie
return MaterialApp(
home: MyHomePage(),
);
// Déclaration de la page d'accueil avec état
class MyHomePage extends StatefulWidget {
@override
State<MyHomePage> createState() => _MyHomePageState();
class _MyHomePageState extends State<MyHomePage> {
// Liste des départements
List<String> _depsList = ['GEA', 'GCR', 'GCP'];
Code Flutter Commenté
// Liste des matières
List<String> _matieresList = ['Java', 'Flutter'];
// Liste des niveaux
List<String> _niveauxList = ['niveau 1', 'niveau 2', 'niveau 3'];
// Variables pour récupérer les valeurs saisies par l'utilisateur
TextEditingController _nom = TextEditingController();
TextEditingController _prenom = TextEditingController();
String _radioVal = ''; // Valeur sélectionnée pour le département
List<String> _checkMatieres = []; // Matières sélectionnées
String _niveauVal = ''; // Niveau sélectionné
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('Ex1 TP1')), // Barre d'application avec un titre
body: SingleChildScrollView(
// Permet de défiler lorsque le contenu dépasse l'écran
child: Form(
// Formulaire principal
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
// Champ de saisie pour le nom
TextFormField(
controller: _nom,
decoration: InputDecoration(
label: Text('Nom'),
icon: Icon(Icons.person),
),
Code Flutter Commenté
),
// Champ de saisie pour le prénom
TextFormField(
controller: _prenom,
decoration: InputDecoration(
label: Text('Prenom'),
icon: Icon(Icons.person),
),
),
SizedBox(height: 30), // Espacement
... (Texte tronqué pour concision)
);