salut,
J'ai un projet ou j utilise plusieur form et j ai fais une procédure objet, pour que toute les forms puissent réagir a la même procédure
Pour plus de simplicité dans mon code j'ai modifier mon programme pour créer dynamiquement des frames. Or maintenant, il n'existe pas de procédure "AcitveFrame" pour savoir qu'elle frame est encours d'affichage. Donc je me retrouve bloquer.
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 type TEmission_douchette=Procedure (trame:string) of object; procedure X; begin if length(screen.ActiveForm.Name)<>0 then begin @fonction_douchette:=screen.ActiveForm.MethodAddress('Emission_douchette'); if @fonction_douchette<>nil then begin fonction_douchette(envoi_trame); application.processmessages; end; end; end;
J ai pensé a faire une boucle de ce style:
Mais la aussi problème ..... car ce n'est paas une classe Tframe , mais des classes de frame propriétaire du style :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 for loop:=0 to form_pp.ComponentCount-1 do begin if (form_pp.Components[loop] is Tframe) then begin showmessage('ok'); end; end;
Tframe_login
Tframe_progression
.....
Si vous avez une petit idée , je suis preneur ....
Merci d avance.
Partager