Création d'une class

Bruto Messages postés 214 Date d'inscription jeudi 21 mars 2002 Statut Membre Dernière intervention 14 mai 2004 - 10 oct. 2002 à 15:49
cs_sim51 Messages postés 240 Date d'inscription dimanche 31 octobre 2004 Statut Membre Dernière intervention 31 décembre 2006 - 10 janv. 2005 à 10:34
Je voudrais créer une classe nommé TPwd avec un champ User et Password de type string

Comment dois-je m'y prendre ? type, enum, ... ?

;) Bruto --- Le p'tit belge --- pour vous servir

5 réponses

cs_Bestiol Messages postés 833 Date d'inscription dimanche 6 janvier 2002 Statut Membre Dernière intervention 3 novembre 2005 1
10 oct. 2002 à 17:01
Salut !!

Voici comment tu peux faire :
Type
TPwd: Class
User, Password: String;
end;

Ou avec un record :
Type
TPwd: Record
User, Password: String;
end;

Voilà !! Bonne prog' !
Bestiol.
0
cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
10 oct. 2002 à 22:56
Mon cher Bestiol, je crains que tu ne confondes classe et enregsitrement.
En supposant que les deux propriétés soit accessibles (public) en lecture (read) et écriture (write) et ne nécessitent pas de traitement ou vérifications particulières lors de l'écriture, alors tu peux écrire :

//Déclaration de la classe TPWD
TPwd = class
public
property User : string read FUSer write FUser;
property Password : string read FPassword write FPassword;
end;

Ensuite, tout en laissant le curseur dans la déclaration de cette classe (c'est à dire entre le TPwd et le end; de la fin), soit tu cliques droit et tu choisi "Compléter la classe sous le curseur", soit tu fais [shift][ctrl][C]. Et là, ô merveille, Delphi t'écrit le squellette de code, déclares les champs privés dans la section Private, etc...

Depuis Delphi 4, il n'a jamais été aussi facile d'écrire des classes. Même si tu ajoutes des propriétés, des méthodes, etc, Delphi complètera la classe en fonction des ajouts.
On ne peut pas, en revanche, en dire autant des enregistrements. Mais le sujet n'est pas le même.

Maintenant, si c'est juste pour stocker un nom et un mot de passe, faut-il vraiment utiliser les techniques de la POO ?

J'allais oublier un point de détail qui a son importance. Quand on déclare TPwd= Class, c'est de la classe TObject que l'on est censé hériter. Donc, dans le cas présent, inutile de redéclarer un constructeur et toute la quincaillerie, le service est compris.

A vot'bon coeur m'sieurs dames.

May Delphi be with you.
site Delphiprog
0
cs_Bestiol Messages postés 833 Date d'inscription dimanche 6 janvier 2002 Statut Membre Dernière intervention 3 novembre 2005 1
11 oct. 2002 à 13:36
Mon cher DelphiProg, je crois que tu as raison... Je me suis un peu emmêlé les piceaux... Mais bon, ça arrive !!

Effectivement, j'ai confondu les deux... Ma mémoire me fait défaut, snif !
:blush)

Merci de m'avoir remis dans la bonne voie ! lol
Bestiol.
0
cs_Bestiol Messages postés 833 Date d'inscription dimanche 6 janvier 2002 Statut Membre Dernière intervention 3 novembre 2005 1
11 oct. 2002 à 13:48
Après relecture de ton message, je me pose quelques questions... Pour utiliser la propriété Data de TTreeNode, j'ai fait quelque chose du genre :

....
TSonItm = class
Var1, Var2: Boolean;
Var3: Integer;
Var4: String;
end;
....

Ensuite :
....
Node := TTreeNode.Create(...);
Node.Data := TSonItm.Create;
....
(Je ne suis pas sûr de la syntaxe et je ne peux malheureusement pas vérifier...)

Donc, si je comprend bien ce que tu as dis, je n'avais ici pas du tout déclaré de classe ?
Car toi, tu la déclares comme quand on crée un composant, en quelque sorte...

Qu'est-ce que j'ai fait, alors ?!!! :question)

Merci d'avance !
Bestiol.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_sim51 Messages postés 240 Date d'inscription dimanche 31 octobre 2004 Statut Membre Dernière intervention 31 décembre 2006 2
10 janv. 2005 à 10:34
voici comment on déclare une nouvelle class dans delphi

Tout d'abord, il faut créer une nouvelle unité puis :

Unit exemple

interface

uses

Type

Tex=class(nom_de_la_class_parent)

Private

{mettre les variables et les procédure privée}

Public

{mettre les var et les procedure publiques}

end;

Implémentation
{on écrit le code des procédure}

end.



Voilà pour la création de la class, la différence entre le privé
et le public c'est que quand une variable (ou une procédure) est en
privé, on oeut l'appeler que si on est à l'interieur de la class, donc
si une variable est en privé et que tu veux la modifier dans ton
programme, il faudra créer un geter (une procedure) en public qui
renvoie la variable et un seter pour la modifier.

Voilà un petit rapel pour ta mémoire Bestiole

a++
0
Rejoignez-nous