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

Langage Delphi Discussion :

Affichage des fenêtres !


Sujet :

Langage Delphi

  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2008
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Ukraine

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2008
    Messages : 162
    Points : 163
    Points
    163
    Par défaut Affichage des fenêtres !
    Bonjour,
    Mon application doit alerter l'utilisateur de certains évènement, et pour cela, elle doit afficher des petites fenêtres Popup (en EN) (comme les AV).

    Mais un petit souci, quand la fenêtre principale est réduite dans la barre des tâches, et qu'une de ces petites fenêtres s'affichent (Show), il n'est pas possible de restaurer la fenêtre principale avec un simple clic sur la barre des tâches. Il faut soit d'abord fermer la petite fenêtre, ou faire clic droit -> restaurer.

    Et cela est très gênant, aune idée ?

  2. #2
    Membre expérimenté Avatar de guillemouze
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    876
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 876
    Points : 1 448
    Points
    1 448
    Par défaut
    utilise la zone de notification.
    Regarde du cote de CoolTrayIcon

  3. #3
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 455
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 455
    Points : 24 867
    Points
    24 867
    Par défaut
    Utilise si tu le peux un BallonHint, si tu n'as pas trop d'un info, c'est bien pratique et évite les effets bord liés au fenêtre, .... tu peux le produire avec une fenêtre en jouant avec SetForegroundWindow (tu mémorise le handle en cours, tu affiches ta fenêtre, tu restore le hande)
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2008
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Ukraine

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2008
    Messages : 162
    Points : 163
    Points
    163
    Par défaut
    Citation Envoyé par guillemouze Voir le message
    utilise la zone de notification.
    Regarde du cote de CoolTrayIcon
    C'est pas ça que je veux, et déjà une icône dans la zone de notification.


    @ShaiLeTroll : je ne comprends pas trop l'initiative, mais je pense que la comprendre que le fenêtre doit disparaitre tout seule et redonner la, main (afficher) la fenêtre principale ! Ce n'est pas ça !!

  5. #5
    Membre expérimenté Avatar de guillemouze
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    876
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 876
    Points : 1 448
    Points
    1 448
    Par défaut
    sinon tu peux mettre dans une file d'attente les messages a afficher si la fenetre est reduite, et au restore tu affiche les messages (si c'est possible bien sur, tout depend de la nature de tes messages)

  6. #6
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2008
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Ukraine

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2008
    Messages : 162
    Points : 163
    Points
    163
    Par défaut
    Une idée en bonne et due forme, mais pas dans mon cas, c'est des messages d'alertes sur certains évènements, donc de première importance, alors ils sont immédiatement affichés. Et si la fenêtre est réduite et que le user tente de la restaurer sans fermer la fenêtre du message, c'est pas possible !

  7. #7
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Peux tu montrer le code de ta fonction qui gère l'affichage de tes "fenêtres popup" ?
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

  8. #8
    Membre expérimenté Avatar de guillemouze
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    876
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 876
    Points : 1 448
    Points
    1 448
    Par défaut
    et tu veux pas restaurer ta forme principale obligatoirement avant d'afficher le message ? ou l'afficher en modal ?

  9. #9
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2008
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Ukraine

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2008
    Messages : 162
    Points : 163
    Points
    163
    Par défaut
    Citation Envoyé par Rayek Voir le message
    Peux tu montrer le code de ta fonction qui gère l'affichage de tes "fenêtres popup" ?
    VBoici la fon,ctionn qui affiche la fenêtre des messages :
    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
     
    Procedure WndUserLogShow;
    var i:integer;
    begin
     
    FormStyle:=fsStayOnTop;
    Left:=Screen.WorkAreaWidth - Width ;
     
    case AlertWnd.Showing of
     
      True :
       begin
       Top:=Screen.WorkAreaHeight-AlertWnd.Height;
       Show;
       BringWindowToTop(handle);
     
       for I := 0 to UserLogWnd.Height do
       begin
       Top:=(Screen.WorkAreaHeight-AlertWnd.Height) - i;
       Application.ProcessMessages;
       end;
     
       end;  // true-sec
     
      False :
     
       begin
       Top:=Screen.WorkAreaHeight;
       Show;
       BringWindowToTop(handle);
     
       for I := 0 to UserLogWnd.Height do
       begin
       Top:=Screen.WorkAreaHeight - i;
       Application.ProcessMessages;
       end;
     
       end;  //false-sec
     
    end;
     
    end;
    (Je ne sais plus pourquoi j'ai rajouté ça : BringWindowToTop(handle)) mais bon !

    EDIT : ce problème ne survient pas sous Windows 7.

Discussions similaires

  1. Gérer l'affichage des fenêtres avec des signaux
    Par flomanson dans le forum Débuter
    Réponses: 10
    Dernier message: 09/09/2011, 13h48
  2. Swing et Netbeans - Affichage des fenêtres décalé
    Par gardaud dans le forum NetBeans
    Réponses: 0
    Dernier message: 16/12/2008, 12h05
  3. Pb d'affichage des fenêtres
    Par michouhinda dans le forum SWT/JFace
    Réponses: 13
    Dernier message: 16/05/2008, 05h35
  4. Plan d'affichage des fenêtres
    Par GodGives dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 25/10/2007, 09h45
  5. Lenteur d'affichage des fenêtre et des données
    Par napegadie dans le forum VB.NET
    Réponses: 0
    Dernier message: 27/08/2007, 16h32

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