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 :

Ajuster à la Définition d'écran ?


Sujet :

Delphi

  1. #1
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 388
    Points : 19 811
    Points
    19 811
    Billets dans le blog
    66
    Par défaut Ajuster à la Définition d'écran ?
    Bonjour à tous,

    J'ai cherché sur les forums sans succès:
    Je vous expose donc mon problème:

    Je suis entrain de développer une application (MDI), et pour le moment mes fiches occupent tout l'écran (1024 par 768), la taille des Font est à 10..
    (car l'appli doit tourner sur des PC avec 1 définition d'écran 1024X768)...

    Or je souhaiterai que la taille des fiches et les contrôles s'ajustent a la taille de l'écran ? (que mon appli s'adapte à la définition d'écran..)

    Est-ce possible ?
    Ou dois-je ajuster mes fiches à la plus petite définition d'écran
    (800X600) avec une font à 8...(pour être sur que mon appli ne déborde pas si la definition change) ???
    (j'ai aussi remarqué que pour les menus la font est toujours à 8 et ne peut changer ...)


    Que me conseillez-vous ?


    Merci beaucoup !

    Denis

  2. #2
    Membre chevronné
    Avatar de Archimède
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2005
    Messages
    1 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 644
    Points : 1 975
    Points
    1 975
    Par défaut
    width=>screen.width
    height=>screen.height

    c'est ça que tu cherches pour tes fenêtres?

  3. #3
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 388
    Points : 19 811
    Points
    19 811
    Billets dans le blog
    66
    Par défaut
    Salut,

    Il faudrait que mes contrôles aussi s'ajustent

    Ou dois-je par défaut développer en 800 X 600 pour être sur que ca tienne dans l'écran ???

    @+

  4. #4
    Membre chevronné
    Avatar de Archimède
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2005
    Messages
    1 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 644
    Points : 1 975
    Points
    1 975
    Par défaut
    tu as la propriété anchors...
    et sinon dans on resize, tu peux définir tes dimensions en relatif
    tes polices (size) etc

    tu fais w:=form1.clientwidth
    h:=form1.clientheight et tu définis toutes tes dimensions par rapport à w et h. (w div 4 par exemple)
    et comme les dimensions de ta fiche dépendent de l'écran (screen.width et scrren.height) pas de problème.
    le seul inconvénient réside dans les arrondissements. d'où l'utilité de anchors.
    mais pour les polices etc, tu n'as pas le choix.

  5. #5
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 388
    Points : 19 811
    Points
    19 811
    Billets dans le blog
    66
    Par défaut
    Ok merci,

    je vais étudier tout ca,

    @+

  6. #6
    Membre chevronné
    Avatar de Archimède
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2005
    Messages
    1 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 644
    Points : 1 975
    Points
    1 975
    Par défaut
    sinon, si tu veux que ta fenêtre garde toujours la même dimension pour toute résolution, tu mets la propriété scaled de la form à false.

  7. #7
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 388
    Points : 19 811
    Points
    19 811
    Billets dans le blog
    66
    Par défaut
    Rebonjour,

    J'ai 1 appli MDI

    j'ai bien mis à true les anchors (ca fonctionne pour une fiche normale)
    mais pour les fiche MDIChild quand la fenêtre principale est redimensionnée les fenêtres filles ne le sont pas et donc les controles dans ces fiches ne sont pas redimensionné: comment faire pour les redimensionner en mêm temps que la fiche principale ?

    @+

  8. #8
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 388
    Points : 19 811
    Points
    19 811
    Billets dans le blog
    66
    Par défaut
    Désolé, Je reviens sur le problème !

    J'ai définis toutes mes fiches et controles pour une résolution 800x600, et je souhaite à la création de mes fiches redimensionner les fiches et contrôles en fonction de la résolution d'écran ou l'appli va tourner:

    j'ai donc fais, sur create de chacune de mes fiches:

    ScaleControls(screen.width,800);

    Ca marche bien en largeur mais pas en hauteur, d'autre part j'ai des TStringGrid dont je dois aussi redimensionner les lignes et colonnes...

    Avez-vous une solution à me proposer

    Merci à vous

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    624
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 624
    Points : 754
    Points
    754
    Par défaut
    Si quelqu'un a un pattern ou une conception souple pour gerer les differentes resolutions d'ecran, qu'il n'hesite pas à poster.

    Un retour d'experience serait intéressant.

  10. #10
    Membre habitué
    Homme Profil pro
    Responsable associatif
    Inscrit en
    Octobre 2005
    Messages
    228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Responsable associatif

    Informations forums :
    Inscription : Octobre 2005
    Messages : 228
    Points : 162
    Points
    162
    Par défaut
    euh...ya pas un control form.autosize dans la jvcl ? ça devrait le faire non ?

  11. #11
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 388
    Points : 19 811
    Points
    19 811
    Billets dans le blog
    66
    Par défaut
    Je précise les choses:

    Dois-je créer en 800X600, et garder la même dimension quelque soit la résolution d'écran et mettre scaled à false par défaut:

    Les methodes de redimensionnement sont elles vraiment valables ???

    Vos expériences me seraient bien utiles, n'hésitez pas à témoigner, ca ne vous coute rien et ca ferait bien avancer les choses sur ce sujet !!!

    Merci à tous !

  12. #12
    Membre chevronné Avatar de philnext
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 552
    Points : 1 780
    Points
    1 780
    Par défaut
    De manière générale je conseille de faire une appli. qui fonctionne sur du 800x600 et de garder la fonte par défaut.

  13. #13
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 388
    Points : 19 811
    Points
    19 811
    Billets dans le blog
    66
    Par défaut
    merci philnext,

    c'est ce que j'ai fait, mes fiches ne sont pas redimensionnable et j'ai mis scale à false..

    Voila ma conclusion,

    Désolé, si quelqu'un souhaite apporter son témoigne je laisse la dsicussion ouverte...

    ca pourra toujours servir..

  14. #14
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 436
    Points : 5 851
    Points
    5 851
    Par défaut
    salut


    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
    procedure RealignForm(F: TScrollingWinControl);
    var
      M, D : Integer;
      i, j : Integer;
    begin
      M := Screen.Width; // multiplicateur = définition actuelle de l'écran
      D := 800;              // diviseu  r       = définition de l'écran à la conception
      F.ScaleBy(M, D);
      for i:=0 to Pred(F.ComponentCount) do 
      begin
         if (F.Components[i] is TStringGrid) then 
         begin
    	with (F.Components[i] as TStringGrid) do 
            begin
    	   for j:=0 to ColCount-1 do  
                 ColWidths[j] := MulDiv(ColWidths[j] , M, D);
    	   for j:=0 to RowCount-1 do  
                  RowHeights[j]:= MulDiv(RowHeights[j], M, D);
    	end;
         end 
         else
        if (F.Components[i] is TDbGrid) then	
        begin
           with (F.Components[i] as TDbGrid) do
             for j:=0 to Columns.Count-1 do 
             begin
    	    Columns.Items[j].Width := MulDiv(Columns.Items[j].Width, M, D);
                Columns.Items[j].Title.Font := Columns.Items[j].Font;
    	 end;
         end;
         ...
      end;
      F.Realign;
    end;
    Attention toutes les type de grille ne sont pas correctement realigné de facon automatique il faut faire comme pour le TdbGrid

    @+ Phil

Discussions similaires

  1. [XL-2003] Définition d'écran en VBA
    Par setepenre dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/01/2011, 13h08
  2. [XL-2003] ajuster un userform à l'écran
    Par dlight dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 14/08/2010, 23h11
  3. ajuster appli flash à l'écran
    Par bigboy dans le forum ActionScript 3
    Réponses: 0
    Dernier message: 11/11/2009, 00h26
  4. ajuster mon application à l'écran
    Par cool dans le forum WinDev
    Réponses: 2
    Dernier message: 21/07/2007, 14h09
  5. Définitions d'écrans multiples
    Par TheBigMac dans le forum Balisage (X)HTML et validation W3C
    Réponses: 13
    Dernier message: 12/01/2007, 11h29

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