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 :

Findcomponent sur TImage


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 616
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 616
    Par défaut Findcomponent sur TImage
    Bonjour à toutes et à tous,

    Sur la même forme "FPrincipale", j'ai plusieurs TImage qui se nomment IVignette, GVignette etc...

    Si je répète le with/do, cela fonctionne, ma question est t'il possible de ne pas répéter le with/do d'autant qu'il y a d'autres instructions à la suite ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    with FPrincipale do
       TImage(findcomponent('IVignette'+inttostr(NumScreen))).Picture.Assign(CapturedImage) ;
    //Instructions en plus
     
    with FPrincipale do
       TImage(findcomponent('GVignette'+inttostr(NumScreen))).Picture.Assign(CapturedImage) ;
    Merci de l'aide éventuelle.

    @+,

    Cincap

  2. #2
    Expert confirmé
    Avatar de Ph. B.
    Homme Profil pro
    Freelance
    Inscrit en
    Avril 2002
    Messages
    1 786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 786
    Par défaut
    Bonjour,

    Il faut inclure les instructions dans un bloc begin ... end.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    with FPrincipale do
    begin
      TImage(findcomponent('IVignette'+inttostr(NumScreen))).Picture.Assign(CapturedImage) ;
      TImage(findcomponent('GVignette'+inttostr(NumScreen))).Picture.Assign(CapturedImage) ;
    // autres instructions
    //...
    end;

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 616
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 616
    Par défaut
    @ Ph. B., merci de ta réponse mais j'avais testé avant mon post et je n'ai pas tous les résultats suivants concernant la même fiche !

    @+,

    Cincap

  4. #4
    Expert confirmé
    Avatar de Ph. B.
    Homme Profil pro
    Freelance
    Inscrit en
    Avril 2002
    Messages
    1 786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 786
    Par défaut
    Citation Envoyé par cincap Voir le message
    @ Ph. B., merci de ta réponse mais j'avais testé avant mon post et je n'ai pas tous les résultats suivants concernant la même fiche !
    Est ce que l'on peut voir le code incriminé ? que manque-t-il lors de l'exécution ?

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 616
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 616
    Par défaut
    @ Ph. B.

    Ceci fonctionne correctement :

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
     
    if ParCam[NumScreen].Vignette.Visible then //j'ai testé avec begin
     
       //Module Plans
       with FPrincipale do
       TImage(findcomponent('IVignette'+inttostr(NumScreen))).Picture.Assign(CapturedImage);
        ScanBitmap[NumScreen].Assign(CapturedImage);
       TMED(findcomponent('MED'+inttostr(NumScreen))).InsertNextBitmap(ScanBitmap[NumScreen]); 
     
       with FPrincipale do
       TImage(findcomponent('GVignette'+inttostr(NumScreen))).Picture.Assign(CapturedImage);
       FPrincipale.pcam1.color := shape1.brush.color;
       FPrincipale.shape1.brush.color := shape1.brush.color;
       FPrincipale.Pcamera1.caption := name1.caption;
     
       FPrincipale.pcam2.color := shape2.brush.color;
       FPrincipale.shape2.brush.color := shape2.brush.color;
       FPrincipale.Pcamera2.caption := name2.caption;
     
       FPrincipale.pcam3.color := shape3.brush.color;
       FPrincipale.shape3.brush.color := shape3.brush.color;
       FPrincipale.Pcamera3.caption := name3.caption;
     
     
       FPrincipale.pcam4.color := shape4.brush.color;
       FPrincipale.shape4.brush.color := shape4.brush.color;
       FPrincipale.Pcamera4.caption := name4.caption;
     
       //Module Fzoom
      with Fzoom_1 do
      Fzoom_1.Zvignette1.Picture.assign(FPrincipale.IVignette1.picture);
      Fzoom_1.caption := cameras.name1.caption + ' - On est le  ' +     Formatdatetime('dddd d mmmm yyyy', now) ;
      Fzoom_1.pzoom_1.color := shape1.brush.color;
     
      with Fzoom_2 do
      Fzoom_2.Zvignette2.Picture.assign(FPrincipale.IVignette2.picture);
      Fzoom_2.caption := cameras.name2.caption + ' - On est le  ' + Formatdatetime('dddd d mmmm yyyy', now) ;
      Fzoom_2.pzoom_2.color := shape2.brush.color;
     
      with Fzoom_3 do
      Fzoom_3.Zvignette3.Picture.assign(FPrincipale.IVignette3.picture);
      Fzoom_3.caption := cameras.name3.caption + ' - On est le  ' + Formatdatetime('dddd d mmmm yyyy', now) ;
      Fzoom_3.pzoom_3.color := shape3.brush.color;
     
      with Fzoom_4 do
      Fzoom_4.Zvignette4.Picture.assign(FPrincipale.IVignette4.picture);
      Fzoom_4.caption := cameras.name4.caption + ' - On est le  ' + Formatdatetime('dddd d mmmm yyyy', now) ;
      Fzoom_4.pzoom_4.color := shape4.brush.color;
     
     
      //Module Programmateur
      with Fauto do
       TImage(findcomponent('PVignette'+inttostr(NumScreen))).Picture.Assign(CapturedImage);
     
     
      //Module Web
      with FServer do
      TImage(findcomponent('SVignette'+inttostr(NumScreen))).Picture.Assign(CapturedImage);
     
     
      //Module Mini Ecran
      with Fmonitor1 do
      Fmonitor1.vignette1.Picture.assign(FPrincipale.IVignette1.picture);
      Fmonitor1.panel1.color := shape1.brush.color;
      Fmonitor1.b1.caption := name1.caption;
     
      with Fmonitor2 do
      Fmonitor2.vignette2.Picture.assign(FPrincipale.IVignette2.picture);
      Fmonitor2.panel1.color := shape2.brush.color;
      Fmonitor2.b2.caption := name2.caption;
     
      with Fmonitor3 do
      Fmonitor3.vignette3.Picture.assign(FPrincipale.IVignette3.picture);
      Fmonitor3.panel1.color := shape3.brush.color;
      Fmonitor3.b3.caption := name3.caption;
     
      with Fmonitor4 do
      Fmonitor4.vignette4.Picture.assign(FPrincipale.IVignette4.picture);
      Fmonitor4.panel1.color := shape4.brush.color;
      Fmonitor4.b4.caption := name4.caption;
     
     
      //Dialog
      with Cameras do
      TButton(findcomponent('BDialog'+inttostr(NumScreen))).Visible:=true;
     
     
      with ParamZones do
      if (NumCam.Value=NumScreen)and(Showing) then
      MEDPar.InsertNextBitmap(ScanBitmap[NumScreen]);
     
     
      if ParCam[NumScreen].AutoSynchro then VideoCapture1.CaptureFrame;
      if Zoom[NumScreen]>1 then
      TImage(findcomponent('IZoom'+inttostr(NumScreen))).Picture.Bitmap:= ScanBitmap[NumScreen];
    //end; testé  
    except
    beep;
    end;
    end;
    @+,

    Cincap

  6. #6
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 939
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 939
    Par défaut
    Avec Self, mais est-ce vraiment une simplification

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    with FPrincipale do
    begin  
     TImage(findcomponent('GVignette'+inttostr(NumScreen))).Picture.Assign(CapturedImage);
      pcam1.color := Self.shape1.brush.color;
      shape1.brush.color := Self.shape1.brush.color;
      Pcamera1.caption := Self.name1.caption;
      ...
    end;

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. scintillement onglet tabcontrol sur Timage
    Par Vilukariok dans le forum Débuter
    Réponses: 4
    Dernier message: 31/08/2009, 15h53
  2. Renseignements sur TImage
    Par Laskar dans le forum API, COM et SDKs
    Réponses: 4
    Dernier message: 11/12/2008, 12h07
  3. Graphisme rectangle de sélection sur TImage
    Par colorid dans le forum Langage
    Réponses: 7
    Dernier message: 22/02/2008, 12h59
  4. Haide sur TImage ?
    Par fimisek dans le forum C++Builder
    Réponses: 3
    Dernier message: 28/02/2007, 17h06
  5. Utilisation TPopupMenu sur TImage
    Par Franck26 dans le forum C++Builder
    Réponses: 5
    Dernier message: 12/01/2007, 22h46

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