IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi Discussion :

Thread


Sujet :

Delphi

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 93
    Points : 43
    Points
    43
    Par défaut Thread
    Bonjour,

    Tout d'abord je dois vous avertir que je ne suis pas un pro, d'avance merci pour votre indulgence :-)

    Je m'explique :
    J'ai importer un contrôle activex sur ma fiche.
    La tache la plus lourde se produit sur base d'un event de cet activex.
    Dans les parmètres de la procédure d'event il y a une constante qui est une class.
    Mon problème est de savoir comment je peux faire pour récupérer tous les paramètres de la class en question dans un thread :s
    J'ai cherché sur le net et sur votre site mais je n'ai pas trouvé d'exemple assez clair pour moi (désolé)

    Voici l'example de mon event :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    procedure TForm1.RoutingControl21RouteRequestService(Sender: TObject;
      const clsCall: ICallClass);
      var
      CallerId,CallerDigits:string;
    begin
     CallerID:=clscall.CallerDN;
     CallerDigits:=clscall.CallerDigits;
     clscall.NewDN:='4631';
     routingcontrol21.RouteSelect(clscall);
    end;
    Si vous pouviez me donner un exemple assez clair de ce que je dois faire ce sera une sérieuse avance pour moi.

    D'avance merci
    [Balises CODE rajoutées par Pedro. Merci d'y penser à l'avenir]

  2. #2
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Bonjour,

    Passer la variable Class fournie dans l'event peut effectivement poser problème : pour transmettre ses paramètres à un thread, il faut "cloner" cette variable reçue avant de transmettre la variable clonée.

    De nombreuses classes implémentent la methode Assign pour le clonage des objets.
    Si ce n'est pas le cas, il faut l'écrire .
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

  3. #3
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 93
    Points : 43
    Points
    43
    Par défaut
    Une chose me rassure, je ne me suis apparemment pas inquiété pour rien ;-)
    Mais comment faire pour utiliser Assign ?

  4. #4
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Pour les fonctions Assign existantes, voir Help de Delphi.

    Sinon il faut créer une fonction Assign qui se code par exemple commme ceci :
    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 Tmyclass = class(Tobject)
            varI1 : integer ;
            varS2: string
            ....
    procedure TMyClass.assign(Obj_a_Cloner:Tmyclass) ;
    begin
    varI1:=Obj_a_Cloner.varI1 ;
    varS2:=Obj_a_Cloner.varS2 ;
    ...
    end ;
     
    ...
    Objet_Clone:=TMyClass.Create ;
    Objet_Clone.assign(Objet_source) ;
    // passer Objet_Clone au thread
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

Discussions similaires

  1. Tri multi-threadé
    Par Tifauv' dans le forum C
    Réponses: 8
    Dernier message: 28/06/2007, 09h00
  2. récupérer la valeur de sortie d'un thread
    Par jakouz dans le forum Langage
    Réponses: 3
    Dernier message: 31/07/2002, 11h28
  3. Programmer des threads
    Par haypo dans le forum C
    Réponses: 6
    Dernier message: 02/07/2002, 13h53
  4. Réponses: 5
    Dernier message: 12/06/2002, 15h12
  5. [Kylix] Pb de Thread !!
    Par Anonymous dans le forum EDI
    Réponses: 1
    Dernier message: 25/04/2002, 13h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo