Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Passage de paramètre à une autre form [ Divers / Débutant(e) ] (Jordan59)

mardi 18 mars 2008 à 20:36:15 | Passage de paramètre à une autre form

Jordan59

Bonsoir à tous,

Je suis un grand débutant en delphi étant plutôt un adepte de C# ce qui ne facilite pas les choses niveau syntaxe notamment

J'ai une Form prinicpale qui en appelle une autre en MDI et je souhaiterais lui passer un paramètre mais je n'y arrive pas.

J'ai cherché sur le forum sans trouver quelque chose de simple et je voudrais savoir si quelqu'un pouvait m'expliquer comment faire de façon très simple.

Merci par avance

mardi 18 mars 2008 à 21:57:50 | Re : Passage de paramètre à une autre form

cantador

Membre Club
Oui, mais si tu nous disais ce que tu veux faire exactement...

cantador

mercredi 19 mars 2008 à 08:55:01 | Re : Passage de paramètre à une autre form

Jordan59

Je voudrais passer en paramètre un code article à la 2ème form que j'appelle depuis la première

mercredi 19 mars 2008 à 09:33:35 | Re : Passage de paramètre à une autre form

Loda

Membre Club
salut,

si tu la crée lors de ton besoin, t'as deux solution:
- passer le param au constructeur (et donc faire un nouveau constructeur qui prend ce param)
- ajouter une "property"

si elle est déjà crée (p.ex. instance unique), il te faut:
- garder une référence de la mdi (valeur de retour du .create) dans un champ de ta form principal
- ajouter une property à la mdi

les property sont assez génial car les setter te permette d'implémenter de façon cachée des mis à jour/test lorsque tu change la valeur.

si l'implémentation pose problème, précise quelle solution te semble plus appropriée a ton cas et je te ferrais un exemple rapide.

a+

Loda

Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.

mercredi 19 mars 2008 à 10:15:21 | Re : Passage de paramètre à une autre form

Loda

Membre Club
re,

ah. au final je t'ai fait un exemple directement:



uses
  ...... , ChildMDI_frm;

type
  TfrmMainMDI = class(TForm)
    ToolBar1: TToolBar;
    tlbByConstruct: TToolButton;
    tlbByParam: TToolButton;
    procedure tlbByParamClick(Sender: TObject);
    procedure tlbByConstructClick(Sender: TObject);
  private
    fChildForm : TfrmChildMDI;//instance unique
  end;

var
  frmMainMDI: TfrmMainMDI;

implementation

{$R *.dfm}

procedure TfrmMainMDI.tlbByConstructClick(Sender: TObject);
var
  param : string;
begin
  param := InputBox('Entre param', '','');

  // pass by constructor (news instance every time)
  TFrmChildMDI.CreateWithParam(self,param);

end;

procedure TfrmMainMDI.tlbByParamClick(Sender: TObject);
var
  param : string;
begin
  // pass by param (unic instance)

  if not assigned (fChildForm) then begin
    fChildForm := TFrmChildMDI.Create(self);
  end;

  param := InputBox('Entre param', '','');
  fChildForm.param := param;

end;



type
  TfrmChildMDI = class(TForm)
    Label1: TLabel;
  private
    fParam : string;
    procedure Setparam(const Value: string);
  public
    property param:string read Fparam write Setparam;

    constructor CreateWithParam(AOwner: TComponent; aParam : string);
  end;

var
  frmChildMDI: TfrmChildMDI;

implementation

{$R *.dfm}

{ TfrmChildMDI }

procedure TfrmChildMDI.Setparam(const Value: string);
begin
  Fparam := Value;
  label1.Caption := Fparam;
end;

constructor TfrmChildMDI.CreateWithParam(AOwner: TComponent; aParam: string);
begin
  Create(AOwner);
  Setparam(aParam);
end;



bonne continuation dans le monde de Delphi !

Loda

Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.

mercredi 19 mars 2008 à 10:59:18 | Re : Passage de paramètre à une autre form

Jordan59

Merci beaucoup pour ton aide. En fait j'ai utilisé un moyen détourné, j'ai Mis une méthode publique dans ma deuxième form que j'appelle depuis la form1 et qui intitialise mes variables dans le form 2

mercredi 19 mars 2008 à 13:46:09 | Re : Passage de paramètre à une autre form

Loda

Membre Club
Réponse acceptée !
re,

cela revient presque au même qu'ajouter une "property". a voir. c'est selon tes besoins !

bonne code,

Loda

PS: si le sujet est résolu, indique le (réponse acceptée)

Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.



Cette discussion est classé dans : form, simple, passage, paramètre


Répondre à ce message

Sujets en rapport avec ce message

question de passage de paramètre avec richedit [ par magicwc ] lorsque j affiche du texte dan mon éditor ca marche nikel, mais kan je veu afficher dans mon éditor a partir d une autre fenetre ke celle de départ, i [JOB][passage de paramètres] [ par PpPool ] Bonjour à tous, je me permets de vous demander conseil : j'ai une appli 32 bits assez simple développée avec Delphi 7 qui permet d'envoyer des emails Problème avec le passage de paramètres [ par pepitto ] J'ai problème avec le passage de paramètre : j'ai bien utilisé paramstr mais dès que je dépasse une certaine capacité de paramètre (liste de fichiers [DELPHI 6] => Passage de parametres entre deux fiches [ par nitrique ] Bonjour à tous, Je part d'une fiche (rechercher) pour en créer une autre (détail). Et pour ça, j'aimerair passer l'id de l'élement concerné, à l'autre MIDchild [ par bmwalid ] cmt contoler les compesents d'une form MIDchildrenpar exemple onclik d'un boutton sur la form parent, fait lable1.visible:=false; sur la form midchild Onglet dans une form [ par NaY972 ] Comment inserons des onglets dans une form.. j'ai cherché sur le forum mais j'ai trouvé que ca Le contrôle à inclure pour créer des onglets, c'est le Utiliser un composant sans forms [ par FleX2009 ] Bonjour à tous, comme je le dit dans le sujet j'aimerais bien utiliser un composant sans forms. Même si les composants que je veut utiliser sans form probleme de form [ par thone08 ] Bonjour j'aimerai savoir comment on peut fiare pour gere la position des fenetre les une par rapport au autre .Je m'explique j'ai une form ou lorsque code sur chargement de form [ par mathieu57100 ] Bonjour,j'ai une valeur dans la base de registre que je voudrai charger dans une combobox sur la fiche principale de mon appli au chargement de cette simple question [ par jeckman ] je cherche a faire a faire un logiciel en DELPHI ! Mais je ne voit pas comment m'y prendre pour faire ça ! Je vais vous expliquer ! Je travaille a


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version


HTC G1

Entre 449€ et 449€


Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,374 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.