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 :

[Delphi6] Problème pour masquer une fenêtre dans la barre des taches


Sujet :

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 [Delphi6] Problème pour masquer une fenêtre dans la barre des taches
    Bonjour,

    j'ai une application qui se met en systray. J'en ai déjà fait et ça marche très bien.
    Mais là, sans vraiment comprendre impossible de masquer la fenêtre dans la barrre de tâche.

    Le code Application.ShowMainForm := False ne fonctionne pas

    J'ai donc essayé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ShowWindow(Application.Handle, SW_HIDE);
    SetWindowLong(Application.Handle, GWL_EXSTYLE, WS_EX_TOOLWINDOW);
    ShowWindow(Application.Handle, SW_SHOW);
    Ca fonctionne sauf que lorsqu'on réduit on a une petite fenetre en bas à gauche

    est-ce que le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ShowWindow(Application.Handle, SW_HIDE);
    SetWindowLong(Application.Handle, GWL_EXSTYLE,
      GetWindowLong(Application.Handle, GWL_EXSTYLE) and not WS_EX_APPWINDOW
      or WS_EX_TOOLWINDOW);
    ShowWindow(Application.Handle, SW_SHOW);
    va fonctionner d'après vous ? (oui je viens de trouver le code par hazard sur http://olance.developpez.com/article.../delphi-vista/)

    Ce qu'il faudrait c'est dans OnMinimise restaurer le style normal (WS_EX_APPWINDOW ?) de la fenêtre et la cacher

    Si quelqu'un a eu le problème qu'il n'hésite pas à le dire.

  2. #2
    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
    Après plusieurs test il s'avère de ça vient de la version Entreprise du boulot. Pour contourner le problème voici ce que j'ai fait :

    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
     
    procedure TFrmMain.FormCreate(Sender: TObject);
    begin
        Application.OnMinimize := OnApplicationMinimize ;
     
        ShowWindow(Application.Handle, SW_HIDE);
        SetWindowLong(Application.Handle, GWL_EXSTYLE,
          GetWindowLong(Application.Handle, GWL_EXSTYLE) and not WS_EX_APPWINDOW
          or WS_EX_TOOLWINDOW);
        ShowWindow(Application.Handle, SW_SHOW);
    end;
     
    procedure TFrmMain.OnApplicationMinimize(Sender: TObject);
    begin
        Hide ;
    end;

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

Discussions similaires

  1. Réduire une fenêtre dans la barre des tâches
    Par Invité dans le forum PyQt
    Réponses: 7
    Dernier message: 10/06/2009, 04h53
  2. Réponses: 5
    Dernier message: 12/03/2008, 09h55
  3. Problème pour définir une valeur dans la base des registres
    Par hellspawn_ludo dans le forum Dreamshield
    Réponses: 2
    Dernier message: 30/09/2007, 03h03
  4. Afficher une seule fenêtre dans la barre des taches
    Par Amissan dans le forum Interfaces Graphiques en Java
    Réponses: 7
    Dernier message: 25/01/2007, 16h56
  5. Creation d'une icon dans la barre des taches
    Par Janitrix dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 22/12/2005, 22h36

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