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

Composants VCL Delphi Discussion :

Comment annuler la transparence d'une Form ?


Sujet :

Composants VCL Delphi

  1. #1
    Membre éclairé
    Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    624
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mars 2004
    Messages : 624
    Points : 681
    Points
    681
    Par défaut Comment annuler la transparence d'une Form ?
    Bonjour,

    j'ai lu le tutoriel suivant sur la possibilité de faire des trou dans une fenetre :

    http://zewaren.developpez.com/delphi/regions/

    il y a une chose que je n'ai pas comprise, c'est comment on peut annuler la transparence (ou les régions qu'on a créé) ?

    Merci d'avance

    PS : je n'ai rien trouvé sur le net qui répond à ma question.

  2. #2
    Membre confirmé
    Avatar de lil_jam63
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    447
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 447
    Points : 600
    Points
    600
    Par défaut
    Bonjour et bienvenue sur les forums de Developpez.com .
    Tout dépend, si tu crées ta région en utilisant CombineRgn(), tu peux justement réutiliser la même fonction avec le flag inverse pour recréer ton "trou", exemple:
    pour faire le trou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    procedure TForm1.FormCreate(Sender: TObject);
    var
      R1, R2 : HRGN;
    begin
      R1 := CreateRectRgn(10,30,300,100);
      R2 := CreateRectRgn(0,0,width, height);
      CombineRgn(R1, R1, R2, RGN_XOR);
      SetWindowRgn(handle, R1, true);
      DeleteObject(R1);
      DeleteObject(R2);
    end;
    et pour boucher le trou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    procedure TForm1.FormCreate(Sender: TObject);
    var
      R1, R2 : HRGN;
    begin
      R1 := CreateRectRgn(10,30,300,100);
      R2 := CreateRectRgn(0,0,width, height);
      CombineRgn(R1, R1, R2, RGN_OR); // RGN_OR est l'inverse de RGN_XOR
      SetWindowRgn(handle, R1, true);
      DeleteObject(R1);
      DeleteObject(R2);
    end;
    ----------------------------------------------------
    Avant de poster, pensez à utiliser les différents outils à votre disposition:
    Google, la FAQ et le moteur de recherche.

  3. #3
    Membre éclairé
    Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    624
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mars 2004
    Messages : 624
    Points : 681
    Points
    681
    Par défaut
    Ok merci, ça marche.

  4. #4
    Membre confirmé
    Avatar de lil_jam63
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    447
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 447
    Points : 600
    Points
    600
    Par défaut
    Oublie pas le tag (tout en bas à gauche)
    ----------------------------------------------------
    Avant de poster, pensez à utiliser les différents outils à votre disposition:
    Google, la FAQ et le moteur de recherche.

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

Discussions similaires

  1. Réponses: 13
    Dernier message: 09/05/2006, 16h30
  2. [C#][Débutant] Comment gerer des datas dans une form
    Par Cazaux-Moutou-Philippe dans le forum Windows Forms
    Réponses: 4
    Dernier message: 30/04/2006, 00h10
  3. Comment lister les méthodes d'une Form ?
    Par WebPac dans le forum Langage
    Réponses: 12
    Dernier message: 08/03/2006, 18h45
  4. [C#]Comment passer un parametre d une Form à l'autre ?
    Par ToxiZz dans le forum Windows Forms
    Réponses: 9
    Dernier message: 08/02/2006, 12h28

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