Copie de la totalité d'une liste de chaînes (VCL)

De RAD Studio
Aller à : navigation, rechercher

Remonter à Comment construire des applications Fiches VCL


La copie d'une liste de chaînes peut avoir l'effet d'ajouter un élément ou d'écraser une liste de chaînes existante. Cette application VCL ajoute un élément à une liste de chaînes. Avec une simple modification, elle peut écraser une liste de chaînes. La création de cette application VCL comprend les étapes suivantes :

  1. Création d'une fiche VCL avec des contrôles TButtons, TComboBox et TMemo.
  2. Ecriture du code de création d'une liste de chaînes dans le gestionnaire OnClick de Button1.
  3. Ecriture du code de copie de la liste de chaînes dans le gestionnaire OnClick de Button2.
  4. Exécution de l'application.

Pour créer une fiche VCL avec des contrôles de boutons, boîtes à options et mémo

  1. Choisissez Fichier > Nouveau > Autre > Projets Delphi ou Projets C++Builder et double-cliquez sur l'icône Application Fiches VCL. Le Concepteur de fiches VCL apparaît.
  2. A partir de la page Standard de la palette d'outils, placez deux composants TButtons, un composant TComboBox et un composant TMemo sur la fiche.

Pour créer la liste de chaînes

  1. Sélectionnez Button1 sur la fiche.
  2. Dans l'inspecteur d'objets, double-cliquez sur l'action OnClick de l'onglet Evénements. L'éditeur de code s'affiche, le curseur placé dans le bloc du gestionnaire de l'événement TForm1.Button1Click (Delphi) ou TForm1::Button1Click (C++).
  3. Pour Delphi, placez le curseur avant le mot réservé begin, puis appuyez sur la touche Entrée. Cette action crée une nouvelle ligne au-dessus du bloc de code.
  4. Pour Delphi, placez le curseur sur la nouvelle ligne créée, puis tapez les déclarations de variables suivantes :
var
  StringList: TStrings;
Pour C++, entrez les déclarations de variables suivantes :
TStrings *StringList;
  1. Placez le curseur dans le bloc de code, puis tapez le code suivant :
StringList := TStringList.Create;
  try
    with StringList do begin
      Add('Cet exemple utilise une liste de chaînes.');
      Add('C'est le moyen le plus facile d'ajouter des chaînes');
      Add('à la liste des chaînes d'une boîte à options.');
      Add('N'oubliez pas que : la méthode TStrings.Create');
      Add('est abstraite; utilisez plutôt la');
      Add('méthode TStringList.Create.');
    end;

    with ComboBox1 do begin
						Width := 210;
      Items.Assign(StringList);
      ItemIndex := 0;
    end;
  finally
    StringList.free;
  end;
StringList = new TStringList();
try {
  StringList->Add( "Cet exemple utilise une liste de chaînes" );
  StringList->Add( "C'est le moyen le plus facile d'ajouter des chaînes" );
  StringList->Add( "à la liste des chaînes d'une boîte à options." );
  StringList->Add( "Pensez à appeler le constructeur TstringList!" );
  ComboBox1->Width = 210;
  ComboBox1->Items->Assign( StringList );
  ComboBox1->ItemIndex = 0;
} __finally {
  StringList->Free();
}


Pour copier la liste de chaînes

  1. Sélectionnez Button2 sur la fiche.
  2. Dans l'inspecteur d'objets, double-cliquez sur l'action OnClick de l'onglet Evénements.L'éditeur de code s'affiche, le curseur placé dans le bloc du gestionnaire de l'événement TForm1.Button2Click (Delphi) ou TForm1::Button2Click (C++). Au niveau du curseur, entrez le code suivant :
Memo1.Lines.AddStrings(ComboBox1.Items);
Memo1–>Lines->AddStrings( ComboBox1–>Items 


Pour exécuter l'application

  1. Enregistrez tous les fichiers du projet, puis choisissez Exécuter > Exécuter pour construire et exécuter l'application.La fiche apparaît avec les contrôles.
  2. Cliquez sur Button1.
  3. Dans ComboBox1, cliquez sur la flèche pour étendre la liste déroulante.Les chaînes s'affichent dans TComboBox suivant l'ordre dans lequel elles apparaissent dans le code du gestionnaire d'événement pour Button1.
  4. Cliquez sur Button2.Dans la fenêtre Memo1, les chaînes de ComboBox1 sont ajoutées à la chaîne 'Memo1'.

    Remarque :  Essayez de remplacer le code dans le gestionnaire d'événement Button2 par le code suivant, puis compilez et exécutez de nouveau l'application.

Memo1.Lines.Assign(ComboBox1.Items);
Memo1–>Lines->Assign( ComboBox1–>Items );

Les chaînes de ComboBox1 écrasent la chaîne 'Memo1'.

Voir aussi