Taille d'une Form et Résolution d'écran

Le
Sam Vimaire
Bonjour.
Avec l'avenement des ultra-portables, je me retrouve dans une situation
non initialement prévue.

Pour une résolution d'écran de 800x600 , mon application ne s'affiche
pas totalement (en hauteur pour etre précis).
Le problème est qu'un déplacement de la fenetre vers le haut, ne change
pas l'affaire. La partie "basse" reste toujours invisible.

En outre, le redimensionnement donne des curieux résultats, au dela
d'une certaine taille, le redimensionnement est impossible et la
fenetre se réajuste à une taille inférieure d'elle meme.

Voici pour illustrer mon propos quelques screenshots pris sur mon PC.

La fenêtre telle qu'elle doit apparaitre (et apparait avec une
résolution suffisante)
http://yfrog.com/1rscreenshot180wp

La fenêtre en résolution 800x600
http://yfrog.com/b6screenshot181p

et le résultat lorsque l'on déplace le fenetre vers le haut
http://yfrog.com/20screenshot182p

La frame visualisation est 'tronquée'

Je ne m'étais pas apercu du problème immédiatement, car travaillant en
dual screen, la fenêtre n'est pas tronquée si le bureau est etendu au
deuxième écran (même si celui-i est en 800x600 !)

Une Idée pour eviter ce problème, sans passer par la case "Redesign" de
l'application ?
Merci pour vos conseils.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
LE TROLL
Le #21313551
Bonjour,

Ici tu as une solution :

http://faq.vb.free.fr/index.php?question0

Toutefois sur ce que tu as montré, tu as de quoi encore serrer pour que
ça tienne

Tu as ça aussi :

'-----------------------
Option Explicit
Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As
Long) As Long
'
Sub Form_Load()
Const sm_cxscreen = 0
Const sm_cyscreen = 1
MsgBox "Screen size = " & GetSystemMetrics(sm_cxscreen) & "*" &
GetSystemMetrics(sm_cyscreen)
End Sub
'SM_CXSCREEN 0 Largeur de l'écran.
'SM_CYSCREEN 1 Hauteur de l'écran.
'SM_MOUSEPRESENT 19 Indique si une souris est présente (renvoie 'Vrai' ou
'Faux').
'SM_CMOUSEBUTTONS 43 Indique le nombre de boutons présents sur la souris.
'-------------------------

Pour ma part je fais toujours une fenêtre la plus petite possible,
ouverte dans le coin Nord-Ouest, car, pour réafficher les objets en fonction
de la taille de l'écran, c'est modifier leur taille, espacement, police,
c'est un travail de romain (qui a ses limites)...

Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"Sam Vimaire" news:4b8f8ed6$0$23912$
Bonjour.
Avec l'avenement des ultra-portables, je me retrouve dans une situation
non initialement prévue.

Pour une résolution d'écran de 800x600 , mon application ne s'affiche pas
totalement (en hauteur pour etre précis).
Le problème est qu'un déplacement de la fenetre vers le haut, ne change
pas l'affaire. La partie "basse" reste toujours invisible.

En outre, le redimensionnement donne des curieux résultats, au dela d'une
certaine taille, le redimensionnement est impossible et la fenetre se
réajuste à une taille inférieure d'elle meme.

Voici pour illustrer mon propos quelques screenshots pris sur mon PC.

La fenêtre telle qu'elle doit apparaitre (et apparait avec une résolution
suffisante)
http://yfrog.com/1rscreenshot180wp

La fenêtre en résolution 800x600
http://yfrog.com/b6screenshot181p

et le résultat lorsque l'on déplace le fenetre vers le haut
http://yfrog.com/20screenshot182p

La frame visualisation est 'tronquée'

Je ne m'étais pas apercu du problème immédiatement, car travaillant en
dual screen, la fenêtre n'est pas tronquée si le bureau est etendu au
deuxième écran (même si celui-i est en 800x600 !)

Une Idée pour eviter ce problème, sans passer par la case "Redesign" de
l'application ?
Merci pour vos conseils.


Jean-marc
Le #21313921
Sam Vimaire wrote:
Bonjour.



Hello,

Avec l'avenement des ultra-portables, je me retrouve dans une
situation non initialement prévue.



<snip>

Une Idée pour eviter ce problème, sans passer par la case "Redesign"
de l'application ?



Comme l'a dit le Troll (sic!), la solution la plus simple ici est
d'utiliser la technique décrite dans la FAQ (question 110). Le
plus simple sera d'utiliser la première méthode :
http://msdn.microsoft.com/en-us/library/aa733536(VS.60).aspx

Au vu de l'interface de ton application (très jolie d'ailleurs), ce
ne devrait pas être compliqué à mettre en oeuvre, très simple même.

Tu peux aussi faire quelque chose de similaire et de très simple avec
une PictureBox, 2 scrollBars et l'utilisation judicieuse de PaintPicture.

J'avais écrit un petit programme qui illustre ce genre de choses,
disponible sur VBFrance :
http://www.vbfrance.com/codes/PETITE-APPLICATION-CARTOGRAPHIE-AVEC-SCROLLING-CALCULS-DISTANCES-APRES_36322.aspx

Cordialement,

--
Jean-marc Noury (jean_marc_n2)
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
Sam Vimaire
Le #21314041
Jean-marc avait énoncé :

Au vu de l'interface de ton application (très jolie d'ailleurs), ce
ne devrait pas être compliqué à mettre en oeuvre, très simple même.



Arf .. ! ;)
Je ne sais même pas si je dois prendre ca au 1er ou au 24eme degré
Je trouve ca particulièrement moche et ca m'énerve au plus haut point
quand je dois le ressortir pour une update..

Je developpe l'embarqué, l'interface PC ce n'est pas ma tasse de thé.



Merci pour vos réponses.. j'attaque ca de suite
Sam Vimaire
Le #21314251
Jean-marc vient de nous annoncer :
Au vu de l'interface de ton application (très jolie d'ailleurs), ce
ne devrait pas être compliqué à mettre en oeuvre, très simple même.



Le compliment de ta part, en tout cas éclaire ma morne journée !
Je repars avec un sourire banane ! ;o)
Publicité
Poster une réponse
Anonyme