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

C++Builder Discussion :

TImage en premier plan


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Avatar de bandit boy
    Profil pro
    Inscrit en
    Février 2006
    Messages
    916
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 916
    Par défaut TImage en premier plan
    Bonjour,
    Comment faire pour mettre une image en premier plan?

    Je m'explique, j'essaie de simuler un écran (à pixel) dans un appareil. J'ai une image et un StringGrid pour l'écran. Le hic c'est que l'écran est censé aller sous la photo pour être le plus représentatif.

    Quand j'essaie les méthodes "Bring to front" et "Send to back" en construction et en run, mais l'image reste toujours en fond!

    Si quelqun connait une méthode pour mettre l'image en premier plan, je suis tout ouïe!

    Merci

  2. #2
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Salut bandit boy
    Si j'ai bien compris, tu a une TForm, sur cette TForm tu a pose un TStringGrid, sur ce StringGrid tu pose unTImage, et tu a ton TImage transparent pour visualiser le TStringGrid et tu va ecrire sur le TImage

  3. #3
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 407
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 407
    Par défaut
    Salut !

    Tu prends un TPanel et tu places ton TImage dessus !
    Accessoirement, tu peux fixer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Image1->Align = alClient;
    Image1->Stretch = true;
    Je me suis donc amusé à faire (via un popupmenu) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    void __fastcall TForm1::Front1Click(TObject *Sender)
    {
    Panel1->BringToFront();
    }
     
    void __fastcall TForm1::Back1Click(TObject *Sender)
    {
    Panel1->SendToBack();
    }
    A plus !

  4. #4
    Membre émérite
    Avatar de bandit boy
    Profil pro
    Inscrit en
    Février 2006
    Messages
    916
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 916
    Par défaut
    Bonjour messieurs,

    Blondelle, t'es sur la voie J'ai bien une TForm, sur laquelle j'ai mon StringGrid, et par dessus (en plus large que la grille) j'ai une image avec une partie transparente à travers laquelle on voit la grille. Le but est de considérer la grille comme un écran matricielle (une case = un pixel), donc je vais écrire dans la StringGrid.

    henderson, j'ai essayé de faire le bout de code que tu as posté. Ca fonctionne bien, sauf que je perds l'avantage de la transparence, vu que je vois le fond du TPanel à la place de ma StringGrid à travers mon image. Il n'existe pas une méthode pour le rendre transparent lui aussi ?

    Dans les deux cas, merci pour votre aide messieurs.

  5. #5
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2005
    Messages
    401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 401
    Par défaut
    Hello,

    Tu peux dessiner ton image directement sur le fond de ton Form, en utilisant l'événement OnPaint du TForm:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    void __fastcall TForm32::FormPaint(TObject *Sender)
    {
      // vImg1 est un TImage masqué (Visible=false)
      Canvas->Draw(0, 0, vImg1->Picture->Graphic);
    }

  6. #6
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Salut bandit boy
    Est ce que tu touche pas a ton image ?
    Est ce que ton image doit etre imperativement au dessus du StringGrid ?

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

Discussions similaires

  1. [VB6]Form en premier plan
    Par VeNus2 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 30/04/2004, 12h05
  2. petit problème premier plan, arrière plan
    Par gros bob dans le forum OpenGL
    Réponses: 4
    Dernier message: 19/04/2004, 12h00
  3. Réponses: 2
    Dernier message: 14/03/2004, 22h04
  4. Premier plan sur un dialog
    Par |PaRa-BoL dans le forum MFC
    Réponses: 5
    Dernier message: 04/03/2004, 12h52
  5. forcer une fenetre à etre au premier plan jusqu'a ...
    Par peppena dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 22/12/2003, 16h14

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