Récupérer la valeur d'une cellule sélectionnée dans une nouvelle fenêtre

Résolu
hajeur_abd Messages postés 46 Date d'inscription lundi 4 avril 2005 Statut Membre Dernière intervention 25 septembre 2007 - 13 juin 2005 à 22:09
loicbernard Messages postés 16 Date d'inscription jeudi 22 mai 2003 Statut Membre Dernière intervention 15 juin 2005 - 15 juin 2005 à 14:37
J'ai utilisr dans mon application une Tstringgrid.
Je veut effectuer les oppération suivante mais je ne sait pas comment:
si je clique a une cellule de la premiére colonne alors une fenete apparait qui contient un champ labelle qui porte le contenue de la cellule sélectionneé
Merci d'avance pour l'aide
Hejer.

2 réponses

yvescollet Messages postés 55 Date d'inscription mardi 26 août 2003 Statut Membre Dernière intervention 22 janvier 2006
14 juin 2005 à 09:40
dans la partie "public" de ta classe fenêtre (TForm) tu mets une
variable de type string, et lorsque tu l'instancies et bien tu lui
donnes la valeur de la cellule de la stringgrid à partir de la forme
qui la contient.

Yves
3
loicbernard Messages postés 16 Date d'inscription jeudi 22 mai 2003 Statut Membre Dernière intervention 15 juin 2005
15 juin 2005 à 14:37
Voici une solution qui me semble plus jolie...heuh c'est juste parceque c'est comme ca que je programme


1. Appellons ta 2ème form Form2 ...
tu dois commencer par aller dans projet --> option, onglet fiche tu dois déplacer form2 dans fiche disponible.

2. Pour créer et ouvrir form2 (qui n'est donc plus créé automatiquement), il te faut écrire une procédure appelable lorsque tform2 n'est pas encore instancié... on va donc écrire un class procedure execute (à mettre dans public) ... cette procedure servira egalment à passer tous les paramètres dont tform2 à besoin :

class procedure TForm2.Execute(const aParametre : String;
var aParametre2 : String );
var
Form : TForm2 ;
begin
Form := TForm2.Create(nil); // la form s' "autoinstancie"
with Form do begin
try
Tonlabel.caption := aParametre;
FParametre2 := aParametre2;
ShowModal;
finally
aParametre2 := FParametre2
Release; // ben oui la form s'est auto-instanciée elle s'auto détruit
end;
end;
end;

bon ben je t'explique le aParametre c'est si j'ai bien compris ce qu'il te faut dans ton cas car tu n'as pas emis le souhait de modifier ce parametre...
si tu dois passer un parametre à form2 et que cette form2 doit le modifier et le retourner à form1 alors c'est aparametre qu'il te faut regarder...

3.dans ta form1 voici ce que tu dois ecrire comme code pour ouvrir form2
TForm2.execute(Parametre, Parametre2)

Amicalement,

lolo
3
Rejoignez-nous