unité WinForm ;
interface
utilise
System.Drawing, System.Collections, System.ComponentModel,
Système.Windows.Forms, Système.Données ;
taper
TWinForm = classe (System.Windows.Forms.Form)
{$REGION 'Code géré par le concepteur'}
strict privé
/// <résumé>
/// Variable de concepteur obligatoire.
/// </summary>
Composants : System.ComponentModel.Container ;
Bouton1 : System.Windows.Forms.Button ;
/// <résumé>
/// Méthode requise pour la prise en charge de Designer - ne pas modifier
/// le contenu de cette méthode avec l'éditeur de code.
/// </summary>
procédureInitializeComponent ;
procédure Button1_Click (expéditeur : System.Object ; e : System.EventArgs) ;
{$ENDREGION}
strictement protégé
/// <résumé>
/// Nettoie toutes les ressources utilisées.
/// </summary>
procédure Disposer(Élimination : Booléen);
privé
{Déclarations privées}
publique
constructeur Créer ;
fin;
//Il peut également être écrit sous forme de classe. Ici, j'ai utilisé des enregistrements. Étant donné que l'enregistrement est un type valeur, cela évite d'avoir à créer une instance.
TClassTest=enregistrement
publique
FA : Entier ;
//Opérateur "+" surchargé
Opérateur de classe add(A,B:TClassTest):TClassTest;
fin;
[assembly : RuntimeRequiredAttribute(TypeOf(TWinForm))]
mise en œuvre
{$REGION 'Code généré par Windows Form Designer'}
/// <résumé>
/// Méthode requise pour la prise en charge de Designer -- ne pas modifier
/// le contenu de cette méthode avec l'éditeur de code.
/// </summary>
procédure TWinForm.InitializeComponent ;
commencer
Self.Button1 := System.Windows.Forms.Button.Create;
Self.SuspendLayout;
//
//Bouton1
//
Self.Button1.Location := System.Drawing.Point.Create(96, 88);
Self.Button1.Name := 'Bouton1';
Self.Button1.Size := System.Drawing.Size.Create(392, 112);
Self.Button1.TabIndex := 0;
Self.Button1.Text := 'Bouton1';
Inclure (Self.Button1.Click, Self.Button1_Click);
//
//TWinForm
//
Self.AutoScaleBaseSize := System.Drawing.Size.Create(6, 14);
Self.ClientSize := System.Drawing.Size.Create(560, 357);
Self.Controls.Add(Self.Button1);
Soi.Nom := 'TWinForm';
Self.Text := 'WinForm';
Self.ResumeLayout(False);
fin;
{$ENDREGION}
procédure TWinForm.Dispose (élimination : booléenne);
commencer
si vous disposez alors
commencer
si Composants <> nul alors
Composants.Dispose();
fin;
hérité Disposer(Élimination);
fin;
constructeur TWinForm.Create ;
commencer
hérité Créer;
//
// Requis pour la prise en charge de Windows Form Designer
//
InitialiserComponent ;
//
// TODO : Ajouter n'importe quel code constructeur après l'appel InitializeComponent
//
fin;
procédure TWinForm.Button1_Click(sender: System.Object; e: System.EventArgs);
var
A, B, C : TClassTest ;
commencer
A.FA :=1;
B.FA :=2;
C:=A+B; //Utiliser l'opération + entre deux structures (ou classes) était inimaginable avant DELHI8
system.Windows.Forms.MessageBox.Show(System.Convert.ToString(C.FA) );
fin;
{TClassTest}
//Implémentation de l'opérateur "+" surchargé
opérateur de classe TClassTest.add(A, B: TClassTest) : TClassTest;
commencer
Résultat.FA:=A.FA + B.FA ;
fin;
fin.