Changement de résolution et l'appli ? [Résolu]

cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 18 mars 2007 à 13:02 - Dernière réponse : cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention
- 22 mars 2007 à 19:05
bonjour les delphinautes,

Voilà le sujet:

Lorsque qu'une application est construite, en principe, elle est réalisée sous une certaine configuration de l'écran (ex: 1024 x 768 )
Or, de plus en plus on voit apparaîte des écrans plats 19' et même 21' et les utilisateurs prennent évidemment des configurations leur donnant un maximum d'informations à l'écran.. logique..
Et dans ce contexte avec des résolutions plus fines notre appli se retrouve avec quelquefois des boutons ou des formulaires qui se baladent un peu à l'écran.

comment régler ce problème de manière à avoir quelque soit la configuration choisie, une appli qui s'affiche correctement à l'écran ?

La piste que j'envisage est de stocker au démarrage la résolution trouvée, de forcer ensuite la résolution de l'appli, et sur la fermeture de l'application remettre la résolution sauvegardée précédemment.

peut-être aussi des composants déclenchant un effet de zoom ??

Quel est votre suggestion afin de pallier à cette difficulté ?

merci de votre collaboration
Afficher la suite 

Votre réponse

16 réponses

Meilleure réponse
Cirec 4231 Messages postés vendredi 23 juillet 2004Date d'inscription 3 août 2018 Dernière intervention - 18 mars 2007 à 17:32
3
Merci
Salut,

peut être celle-ci ?

http://www.delphifr.com/infomsg_FENTRES-DANS-DELPHI_897704.aspx

 
@+
Cirec

Merci Cirec 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 72 internautes ce mois-ci

Commenter la réponse de Cirec
Meilleure réponse
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 19 mars 2007 à 18:50
3
Merci
Ce sont des composants fantastiques qui ont obtenu tous les AWARDS..
Evidemment ils sont payants..
je vais questionner l'éditeur et je te tiens informé..
sinon je surchargerai la méthode..

A bientôt et merci

Cantador

Merci cs_cantador 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 72 internautes ce mois-ci

Commenter la réponse de cs_cantador
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 18 mars 2007 à 13:36
0
Merci
bon ben je sens que je vais me faire appeler léon car il y a en fait bcp de
réponses sur le sujet dans le forum..

enfin, si quelqu'un à une nouvelle idée..
Commenter la réponse de cs_cantador
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 18 mars 2007 à 21:02
0
Merci
Excellent et avec bcp d'humour (lol) !

Donc ma logique va être la suivante, je récupère la résolution en cours et si elle est différente de 1024 x 768 alors je lui colle un changeScale(ResEnCours,1024).
Reste néanmoins à vérifier si le micro va supporter 1024 x 768 et si erreur alors
je reviens à la résolution initiale et j'envoie "Vous ne pouvez utiliser l'appli car etc etc "

merci cirec

nb : peut-être que le ChangeScale gère les erreurs ?

@bientôt
Commenter la réponse de cs_cantador
Cirec 4231 Messages postés vendredi 23 juillet 2004Date d'inscription 3 août 2018 Dernière intervention - 19 mars 2007 à 00:18
0
Merci
Ceci devrait t'éclairer  :

ChangeScale ne gère pas les erreurs pour la simple raison qu'il ne devrait pas y en avoir. 
( ha ha ha elle est bonne celle-là  )
Tout comme tu peux déplacer une fenêtre en dehors de l'écran, tu peux créer une fenêtre plus grande que ce dernier ...
Et comme, si j'ai bien compris, ce n'est pas toi qui change la résolution (de l'écran) mais tu la détectes seulement ...   
Le reste se passe de commentaires

 
@+
Cirec

Commenter la réponse de Cirec
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 19 mars 2007 à 11:13
0
Merci
Tiens çà me rappelle une question de foxi à ce sujet sur le forum..

Si changeScale modifier la résolution de l'écran il peut y avoir le cas où la carte graphique ne le supportera pas..
Commenter la réponse de cs_cantador
Cirec 4231 Messages postés vendredi 23 juillet 2004Date d'inscription 3 août 2018 Dernière intervention - 19 mars 2007 à 14:50
0
Merci
ATTENTION :



ChangeScale ne modifie pas la résolution de l'écran ...
en d'autres termes :  ChangeScale agit uniquement sur la taille de la fiche (Form)

Donc ne pas confondre :
Résolution d'écran  et taille de fiche (Form)
 
@+
Cirec

Commenter la réponse de Cirec
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 19 mars 2007 à 15:53
0
Merci
oui bien vu..
ya un truc que je pige pas, le zoom de se déclenche que sur la fiche où la fonction ChangeScale est employée (normal après tout..)

Alors j'ai tenté mais sans succès de la mettre en public et de l'utiliser sur le create d'une autre mais je m'aperçois que les edit, c'est bon mais barre d'outils de tache et grids çà suit pas...

et puis autre sujet d'inquiétude, bonjour les dégats dans les fontes même en utilisant des fontes arial..
bon ben ya certainement du boulot encore à faire..

a moins qu'il y ait une solution pour dire que c'est l'ensemble des composants qui sont affectés par ChangeScale..

???
Commenter la réponse de cs_cantador
Cirec 4231 Messages postés vendredi 23 juillet 2004Date d'inscription 3 août 2018 Dernière intervention - 19 mars 2007 à 16:23
0
Merci
Normalement tous les composants sont sont affectés par ChangeScale ...

Chez moi c'est le cas et même les fontes sont ajustées.

D'ailleurs si tu as les sources regarde dans "Forms.pas" la procedure : TCustomForm.ChangeScale(M, D: Integer);
et tu verras que la fonte est également prise en charge ainsi que les controles, les contraintes et les scrollbars

je pense que ton problème vient de la position (dans le OnCreate) de la procedure.

Fait déjà un teste en ajoutant un bouton sur ta fiche et lance la procedure de ce dernier ....
Normalement ça devrait mieux se passer.

 
@+
Cirec

Commenter la réponse de Cirec
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 19 mars 2007 à 17:04
0
Merci
j'utilise les compos devExpress..

Voilà le test que je viens d'effectuer :
je passe mon micro en 800 x 600 (résolution différente de celle de l'appli)
dans la barre d'outils, un bouton sur lequel j'effectue
ChangeScale(800,1024);

les TcxDBTextEdit et autres TcxDBLookupComboBox,TccDBMemo..c'est bon avec quelques soucis avec les fontes, mais Barre outils (TdxBarManager), Barre des taches(TfcStatusBar) et tous les TcxGrid rien ne bouge.

?
Commenter la réponse de cs_cantador
Cirec 4231 Messages postés vendredi 23 juillet 2004Date d'inscription 3 août 2018 Dernière intervention - 19 mars 2007 à 18:40
0
Merci
Voilà ce que c'est que d'utiliser des composants non standard

Maintenant si tu as les sources de ces composants et en fonction de leurs encêtres, tu créer ou surcharger la methode ChangeScale
Ou encore une solution moins élégente mais plus rapide à mettre en oeuvre serait des les gerer manuellement juste après le ChangeScale
 
@+
Cirec

Commenter la réponse de Cirec
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 19 mars 2007 à 19:36
0
Merci
SI EN FAIT CA MARCHE ! j'ai fait un test sur un petit prog à part..

..avec des compos devexpress..Hummm

donc donc, çà vient de mon appli qui doit masquer quelque chose...

as-tu une idée ?
Commenter la réponse de cs_cantador
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 19 mars 2007 à 22:11
0
Merci
Salut Cirec,

J'ai trouvé ce qui génait..
Ce sont les styles que l'on peut appliquer sur un grid et qui donne plein d'effets sur toutes les zones..Mais qui..

@bientôt
Commenter la réponse de cs_cantador
Cirec 4231 Messages postés vendredi 23 juillet 2004Date d'inscription 3 août 2018 Dernière intervention - 20 mars 2007 à 13:20
0
Merci
Genial ...

et pour les styles je suis pratiquement certain qu'une solution existe ... mais ne possedant pas ces composants je n'ai aucune piste à te proposer ...

Et si je les avais je commencerais par changer la taille du grid et ensuite d'appliquer un style ... si ça fonctionne dans ce sens la suite ne devrait pas être trop compliqué

 
@+
Cirec

Commenter la réponse de Cirec
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 20 mars 2007 à 18:33
0
Merci
Merci Cirec,

figure toi que c'est exactement la proposition que je viens de transmettre à DevExpress juste avant de te lire ! :

Hi Serge,

Thank your for your mail

the solution that I consider is to create a particular style corresponding to the resolution of my application so 1024 X 860 (font.size = 8)
and if the customer is in another configuration then I apply this style to all the headings + changeScale(ResInUse,1024) or ScaleBy(ResInUse,1024)

what do you think about it?

have an idea in order to regulate the problem of the customers who are not in the good resolution of the application?

thank you for your attention


J'ai quand même bien sûr fait l'essai avec un style juste sur le header
en utilisant l'évènement OnGetHeaderStyle et çà marche mais évidemment comment ça va se passer lorsqu'il va falloir changer tous les styles de toutes les vues de tous les grids et dans toutes les rubriques (une Quinzaine environ par vue) et le tout en un clic...

???
je te tiens au courant de la réponse qui en principe est assez rapide.
(10 ans que j'achète leurs produits..)

@+
Commenter la réponse de cs_cantador
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 22 mars 2007 à 19:05
0
Merci
Voilà la réponse :

Hi Cantador,

Basically, this approach looks good and should work as expected for the
resolutions which are higher than 1024x860. Some problems may occur for
those who work with lower resolutions. Please note that the
ExpressQuantumGrid limits the size of its elements by minimum values. For
example, you cannot make the height of a column header less than the height
of the filter button. Please keep such situations in mind.

Thanks ...
Serge

Developer Express Support

Un commentaire ?

@+
Commenter la réponse de cs_cantador

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.