Jamais utilisé de reintroduce . Mais n'est-ce pas lié à la surcharge d'overload pour que l'ancienne procédure soit toujours accessible ?
EDIT:
Il y a un avertissement, mais le but étant bien de cacher le constructor d'origine. Alors...
Jamais utilisé de reintroduce . Mais n'est-ce pas lié à la surcharge d'overload pour que l'ancienne procédure soit toujours accessible ?
EDIT:
Il y a un avertissement, mais le but étant bien de cacher le constructor d'origine. Alors...
Ben le problème c'est qu'en redéfinissant le constructeur avec des paramètres différents (donc sans directive overload), tu masques le constructeur de TForm.
D'où la présence d'un avertissement à la compilation.
Quant à la directive reintroduce à part masquer ce type d'avertissement je n'en vois pas d'autre utilité.
Mais bon je chipote.
[edit]
On est d'accord.
Justement, c'est sa seule utilité. Si tu écris une méthode qui masque celle de l'ancêtre, le compilo déclenche un avertissement car c'est probablement une erreur.
Mais si tu le fais en connaissance de cause, et que tu es un peu pointilleux sur les avertissements, tu ne veux pas avoir de warning alors que c'est voulu. Reintroduce sert uniquement à dire au compilo que tu le fais en connaissance de cause.
Dans l'idée , MonIdOrigine est une variable globale définie dans la partie implémentation de l'unité USociete. Question toujours naïve : quelle importance qu'elle n'appartienne pas à TFSociete puisqu'elle ne servira qu'à un traitement local : elle n'est pas destinée à être appelée par d'autres unités ???
Dans le cas présent, il ne devrait pas y avoir autrement de problème .
Mais ne prend pas cette habitude. S'il devait une fois y avoir plusieurs objets du même type (pas forcément des fiches) actifs en même temps...
non, pas obligatoir:
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 type TMaForm= class(TForm) ..... end; Function ModifCheque(V:integer):Integer;// "V" variable qui défini l'appelant Implemantation var Eta:integer; Function ModifCheque; begin with TMaForm.Create(application) do try Eta:=v; case v of end; result:=ShowModal; finally Release; end; end; //ou Procedure TMaForm.Traitment begin case Eta of .... end; end;
Rebonjour à tous.
Je vous remercie pour toute vos pistes trés intéressantes.
Pour infomer Mantor le tag n'ai pas utilisable, au showmessage dans l'evenement create de la forme Societe il est toujours égale à 0.
Apres la remarque d'andnotor sur le recherche d'une autre information, effectivement j'ai un String (variable global) qui est testable à = '' qui règle mon souci.
PS : Je ne pouvais pas utiliser la connection string qui est par défaut rempli au moins du provider.
Ceux-ci dit, j'aurais aimé utiliser cette notion de surcharge d'une variable de ma Form Fsociete mais je n'ai pas réussi, où n'ai pas bien compris vos exemples.
Merci à tous...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager