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 :

Afficher processus visible + systray


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 9
    Par défaut Afficher processus visible + systray
    Bonjour,
    Je refais appel à vos services car je suis a nouveau confronté à un problème:
    Commencons par le commencement:
    Je suis en train de developper un logiciel qui sera une alternative a la barre de tache de windows, avec en plus un tas d'options , plugins , skin etc... bref
    Je suis a l'étape ou il faut que je récupère lal iste de processus visible(donc les fenetres ouverte)avec en plus leurs etat(flacher, au premier plan...) ainsi que les icons présentent dans le systray(avec si possible les actions qui leurs sont associées lors du click)
    mais voila , comment faire?
    je pensai trouver mon bonheur en énumérant les processus actif mais dans la liste obtenue rien ne m'indique l'états des fenetres, celles qui sont visibles etc...

    Alors si quelqu'un poubvait me mettre sur la piste ...

    merciii

  2. #2
    Membre éclairé
    Inscrit en
    Septembre 2006
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 81
    Par défaut
    Hummm.. j'avais le souvenir que avec un process tu as moyen de choper le(s) handle(s) de la/des fenetre(s) qui lui sont associées. Ensuite quand tu as le handle de la fenetre, tu peux récupérer son état. J'avais prit le code a partir d'un exemple de gestionnaire des taches amélioré que j'avais prit dans les sources par ici.

    Par contre je peux pas te donner le nom des procedures ni de code pour l'instant, je suis sous Mac et j'ai po delphi

    Edit : Si tu comprend l'anglais, peut etre que tu trouvera ton bonheur ici :
    http://delphi.about.com/od/windowssh.../aa080304a.htm

    Edit 2 :Une fois que tu as le handle de la fenêtre, Y a des fonctions comme GetWindowState qui te permettent en fonction du handle de choper l'etat.. faut fouiller un peu dans cette voie je pense

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 9
    Par défaut
    Ok merci c'est cool,
    je regarderai le lien tout a l'heure si j'ai le temps, sinon demain ou lundi enfin bref je te tien au courant,
    merci encore!

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 9
    Par défaut
    Ok j'ai bien regarder l'url que tu m'a donné, c'est vrai que c'est interessant mais même en naviguant au travers des differents liens présents sur ce site je n'ai toujours pas réussi à comprendre comment récupérer les fenêtres visibles ainsi que leurs états (je n'ai pas réussi à éxploiter GetWindowState et l'aide de delphi n'est pas très complète à ce sujet...)
    j'ai tenté de retrouver le gestionnaire de tache que tu avais trouvé ici mais sans résultat...

    hmhm ca commence mal tout ca ...

    Je vais essayer de continuer avec le site que tu m'a donné mais c'est vrai que le fait que ce soit en anglais ne me rend pas la tache plus facile car à la base , c'est déja un sujet difficile pour moi.

  5. #5
    Membre éclairé
    Inscrit en
    Septembre 2006
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 81
    Par défaut
    J'ai une quinzaine de minutes de libre .. je vais voir si j'arrive a faire qqch

  6. #6
    Membre éclairé
    Inscrit en
    Septembre 2006
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 81
    Par défaut
    Bon j'ai fait un petit prog moche vite fait en reprenant l'idée du code qu'il donne sur le site. Ensuite j'ai juste ajouté un bouton. Si la fenetre était visible ca la cache et si elle n'était pas visible ca l'affiche.

    Pour savoir si elle est visible j'ai utilisé la fonction IsWindowVisible

    A noter que 1) Contrairement a ce qu'on pourrait croire, une "window" n'est pas seulement une form ou un popup .. en fait n'importe que objet graphique est considéré comme une fenetre. Il faudra donc faire un filtre sur la liste .. peut etre en fonction du titre de la fenetre .. etc .. a voir

    2) Gaffe a pas afficher / masquer n'importe quoi... on se retrouve vite avec un bureau sans icones, ou des fenetres infermables un peu n'import ou. Mais en gros l'idée est la. Je sais pas si ca va t'aider Tiens moi au courant

    3) interdit de critiquer le code j'étais a la bourre et j'ai fait du moche fait avec delphi 2005 personnel

    Edit : J'avais mit l'exe.. mais comme j'ai pas de quoi le tester antivirus et que mon PC est pas super sur, je l'ai enlevé. Si l'exe est toujours dans le zip vaut mieux pas le lancer .. je voudrais po etre responsable en cas de quoi que ce soit
    Fichiers attachés Fichiers attachés

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

Discussions similaires

  1. rendre le processus visible
    Par Telemak dans le forum Windows XP
    Réponses: 3
    Dernier message: 21/06/2007, 22h18
  2. Comment permettre que mon message affiché reste visible ?
    Par Hageax dans le forum x86 32-bits / 64-bits
    Réponses: 21
    Dernier message: 06/06/2007, 13h20
  3. [D7] StringGrid afficher une colonne comme 1e colonne visibl
    Par raoulmania dans le forum Composants VCL
    Réponses: 2
    Dernier message: 15/12/2005, 14h23
  4. Comment interdir ps -a d'afficher mes propres processus ?
    Par elmessoussi dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 08/12/2005, 14h14

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