Emprise à l'écran d'un formulaire

Résolu
Zermelo - 17 mars 2013 à 18:32
Zermelo Messages postés 378 Date d'inscription samedi 22 septembre 2012 Statut Membre Dernière intervention 13 août 2017 - 2 août 2013 à 17:22
Bonjour à toutes et à tous.

Suite à la discussion "Largueur et hauteur sur écran" qui ne s'est pas terminée de façon bien nette, je vous délivre la procédure à laquelle je suis parvenu.
Public Function Emprise(ByVal Frm As Form) As Rectangle
        Dim Rct As Rectangle, Brd As Integer
        With Frm
            If .FormBorderStyle.ToString.Contains("Fixed") Then
                Brd = SystemInformation.SizingBorderWidth
            Else
                Brd = 0
            End If
            Rct.X = .Left - Brd
            Rct.Y = .Top - Brd
            Rct.Width = .Width + 2 * Brd
            Rct.Height = .Height + 2 * Brd
        End With
        Return Rct
    End Function


Cordialement.


Étant illettré, je signe d'une croix : ×

3 réponses

Zermelo Messages postés 378 Date d'inscription samedi 22 septembre 2012 Statut Membre Dernière intervention 13 août 2017 14
2 août 2013 à 11:44
Je précise que l'emprise désigne l'ensemble des pixels affichés à l'écran par le formulaire Frm
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
2 août 2013 à 16:54
Bonjour, AZermelo,
Je n'ai pas vu l'autre discussion dont tu parles, mais je ne comprends pas pourquoi tu n'utilises pas la propriété ClientRectangle.
Y a-t-il une raison que j'ignore (je ne suis pas vbnettiste) à cela ?
0
Zermelo Messages postés 378 Date d'inscription samedi 22 septembre 2012 Statut Membre Dernière intervention 13 août 2017 14
2 août 2013 à 17:22
Bonjour ucfoutu.

Il y a effectivement un raison particulière. Le problème ne se pose pas en vb6. Il se pose en vb 2010 sur lequel je travaille, et probablement en vb net. Il se trouve qu'en vb 2010, et à ma grande fureur, la place occupée par un formulaire peut déborder du rectangle délimité par les cotes Left, Top, Width, et Height. Et pour faire bon poids, ce débord dépend de la propriété BorderStyle du formulaire.
Tralala.

Avec mes amitiés.
0
Rejoignez-nous