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 :

Application en environnement multi-écrans


Sujet :

Langage Delphi

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 114
    Points : 70
    Points
    70
    Par défaut Application en environnement multi-écrans
    Bonjour,

    Sur un poste Windows avec 2 écrans, j'ai un soucis avec les méthodes TForm.Monitor ou TScreen.MonitorFromWindow, qui me retourne toujours l'écran 1.

    Je lance l'application sur l'écran 1, je déplace l'application sur l'écran 2, j'ouvre une nouvelle fenêtre, et les méthodes précédentes retournent toujours écran 1.

    Si je fais un test avec TScreen.MonitorCount et TScreen.Monitors, il trouve bien les 2 écrans avec les bonnes configurations.

    Avez-vous une idée? Merci

  2. #2
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 696
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 696
    Points : 13 135
    Points
    13 135
    Par défaut
    La numérotation est à base 0. Le principal à l'indice 0 et le deuxième 1.

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 114
    Points : 70
    Points
    70
    Par défaut
    J'aurais dus utiliser les noms "écran principal" et "écran secondaire" à la place de "écran 1" et "écran 2"

    Pour mes essais je ne me suis pas fier aux indices, mais aux handles des écrans

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    st := '';
    for i := 0 to Screen.MonitorCount-1 do
      st := Format('%0:s (index: %1:d)(handle: %2:d)', [st, i, Screen.Monitors[i].Handle]);
    Quelque soit l'écran sur lequel on utilise l'application, il retourne toujours le handle de "écran principal"

  4. #4
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 696
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 696
    Points : 13 135
    Points
    13 135
    Par défaut
    Ceci fonctionne parfaitement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      Caption := Format('Index: %d, Handle: %d', [Monitor.MonitorNum, Monitor.Handle]);
    end;

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 114
    Points : 70
    Points
    70
    Par défaut
    Oui...mais pas dans l'évènement FormCreate, là ou j'avais placé mon test...

    Je ne comprends pas trop pourquoi, mais je vais en tenir compte. Merci

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

Discussions similaires

  1. Application multi écran
    Par Crhys dans le forum Ext JS / Sencha
    Réponses: 3
    Dernier message: 17/01/2014, 12h46
  2. [WD17] Environnement de developpement en multi écran
    Par wincroc dans le forum WinDev
    Réponses: 7
    Dernier message: 27/07/2012, 21h53
  3. Application GWT multi-écrans et authentification
    Par _skip dans le forum GWT et Vaadin
    Réponses: 2
    Dernier message: 04/08/2011, 15h30

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