Adaptation de l'apparence de mon application

galaxy2009
Messages postés
144
Date d'inscription
dimanche 24 avril 2011
Statut
Membre
Dernière intervention
16 juin 2016
- 25 nov. 2013 à 14:23
cs_ShayW
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
- 25 nov. 2013 à 22:05
Bonjour,
je développe avec vb2010 sup un pc portable avec windows7 et un écran 15.6, mon problème c'est quand j'exécute mon programme sur une autre version par exemple Windows pack2 avec un écran différent du mien :
1- les polices s'affichent différemment (taille plus grande).
2- les forms ne s'affichent pas dans leur taille réelle(plus grande que la taille de l'écran).
alors ma question c'est comment je peux adapter mon programme sur n'importe quel PC où il est exécuté.

merci pour votre aide parce que vraiment c'est embêtant.

3 réponses

cs_ShayW
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
56
25 nov. 2013 à 17:23
Bonjour

les polices s'affichent différemment (taille plus grande). 

en fait la police ne change pas mais comme la résolution de l'autre
pc est différent du tien la taille change
la taille,les polices sont mesurés en pixel et comme le nombre de pixels dépend de la résolution donc plus la résolution augmente
le nombre de pixel augmente aussi ce qui mene à un pixel de petite taille
si tu écris textbox1.font = new font("arial",14)
dans l'autre pc c'est toujours arial 14 mais paraitra plus grand ou
plus petit selon la résolution
0
galaxy2009
Messages postés
144
Date d'inscription
dimanche 24 avril 2011
Statut
Membre
Dernière intervention
16 juin 2016

25 nov. 2013 à 17:51
bonjour,
mais ça ne résoudre pas le problème, est ce qu'il y a une astuce standard qui règle ce problème.

0
cs_ShayW
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
56
25 nov. 2013 à 22:05
Oui je sais que cela ne résoud pas le problème mais au moins que tu le comprends

il n'y a pas d'astuce
on peut utiliser le
http://msdn.microsoft.com/fr-fr/library/system.windows.forms.tablelayoutpanel(v=vs.110).aspx
je n'ai jamais utilisé
ou tu écris une sub
qui redimensionne tous tes composants selon le rapport entre la
résolution de ton pc et l'autre
à tester
dans la sub new de ta form
Public Sub New()

' This call is required by the Windows Form Designer.
InitializeComponent()
Dim ratio As Double = My.Computer.Screen.Bounds.Width / 1024
'remplace s'il faut 1024 par la résolution largeur de ton écran
Me.Width = Convert.ToInt32(Me.Size.Width * ratio)
Me.Height = Convert.ToInt32(Me.Size.Height * ratio)
For Each ctrl As Control In Me.Controls
ctrl.Font = New Font(ctrl.Font.Name, Convert.ToInt32(ctrl.Font.Size * ratio), ctrl.Font.Style)
ctrl.Width = Convert.ToInt32(ctrl.Width * ratio)
ctrl.Height = Convert.ToInt32(ctrl.Height * ratio)
ctrl.Location = New Point(Convert.ToInt32(ctrl.Left * ratio), Convert.ToInt32(ctrl.Top * ratio))
Next
' Add any initialization after the InitializeComponent() call.

End Sub
0