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 :

L'objet Screen ne semble pas se mettre à jour quand je lui demande le nombre ?


Sujet :

Delphi

  1. #1
    Membre habitué
    Avatar de denis18
    Homme Profil pro
    Développeur informatique
    Inscrit en
    décembre 2012
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : décembre 2012
    Messages : 63
    Points : 152
    Points
    152
    Billets dans le blog
    1
    Par défaut L'objet Screen ne semble pas se mettre à jour quand je lui demande le nombre ?
    Bonjour,

    Dans l'Edi de Delphi pour situer ma requête, l'objet Screen ne semble pas se mettre à jour quand je lui demande le nombre de moniteur (écran) qui sont disponible lorsque je change dans les paramètre d'affichage de Windows ceci afin de prendre en compte le message wm_devicechange, comment demander et actualiser, l'objet screen tout simplement pour gérer cette disposition et ce changement dans cette Edi ?

    Merci d'avance.

  2. #2
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2006
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : novembre 2006
    Messages : 617
    Points : 3 297
    Points
    3 297
    Billets dans le blog
    2
    Par défaut
    Bonsoir,

    Je ne comprends pas bien votre demande : est ce dans l'IDE que vous avez le problème ou dans votre appli ?

    Si c'est dans votre appli, les informations du/des moniteurs ne sont prises en compte qu'au démarrage de l'appli. Il doit être possible de forcer néanmoins cela en envoyant un message WM_WTSSESSION_CHANGE comme cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SendMessage(Application.Handle, WM_WTSSESSION_CHANGE, 0, 0);
    En effet, dans Vcl.Forms, dans la procédure TApplication.WndProc, il y a un appel à screen.GetMonitors qui réinitialise la liste des moniteurs sur ce message.
    Mon site - Mes tutoriels - GitHub - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  3. #3
    Membre habitué
    Avatar de denis18
    Homme Profil pro
    Développeur informatique
    Inscrit en
    décembre 2012
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : décembre 2012
    Messages : 63
    Points : 152
    Points
    152
    Billets dans le blog
    1
    Par défaut C'est mon application qui demande l'actualisation de ce message merci de votre réponse rapide je l'essaye :
    C'est mon application qui demande l'actualisation de ce message merci de votre réponse rapide je l'essaye :

    En effet quand un problème se pose, j'interroge les Oracles sûr internet, en l'occurrence développez.com me répond le plus rapidement cette fois ci.

    J'ai regardé cette Api moi aussi mais l'interface de ce module ne m'a pas permis de connaître l'intitulé de ce message particulier à Microsoft : WM_WTSSESSION_CHANGE.

    Nom : Nasa.jpg
Affichages : 74
Taille : 7,6 Ko

    Merci.
    Images attachées Images attachées  

  4. #4
    Membre habitué
    Avatar de denis18
    Homme Profil pro
    Développeur informatique
    Inscrit en
    décembre 2012
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : décembre 2012
    Messages : 63
    Points : 152
    Points
    152
    Billets dans le blog
    1
    Par défaut Selon ce message wm_devmodechange qui semble plus propice la nombre de moniteurs connecté
    Selon ce message wm_devmodechange, la possibilité de savoir si un changement à eue lieu dans l'énumération du nombre d'écran.

    La recherche effective de votre proposition m'a permis de connaître le nombre de moniteurs connecté(s) avec l'Api de Windows
    et celle de Delphi Multimon, mais le message GetSystemMetrics(SM_CMONITORS) est plus facile à utiliser dans ce cas le logiciel Denisdraw
    dans une compilation actuelle permet en cible 64 bits d'interpréter correctement ce changement du gestionnaire d'écran, en X32, pour ma
    propre compilation Delphi 7, ne me permet pas encore de le savoir exactement mais petite pause, nécessaire merci tout de même.

    Denis Stéphane Bertin - CAO .

Discussions similaires

  1. Des paquets qui ne veulent pas se mettre à jour
    Par schats dans le forum Ubuntu
    Réponses: 0
    Dernier message: 08/07/2012, 06h12
  2. [XL-2002] L'objet "Screen" n'est pas définit
    Par Maze0 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 08/03/2012, 22h42
  3. Réponses: 3
    Dernier message: 05/08/2011, 10h36
  4. Composite ne veux pas se mettre à jour
    Par Contrec dans le forum SWT/JFace
    Réponses: 2
    Dernier message: 29/01/2010, 17h52
  5. [WD-2003] Renvois qui ne veulent pas se mettre à jour
    Par Veronyc dans le forum Word
    Réponses: 6
    Dernier message: 11/01/2008, 23h27

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