Soyez le premier à donner votre avis sur cette source.
Vue 13 174 fois - Téléchargée 1 268 fois
Public Class Form1 Dim Loc As New Point Dim WL As String Dim HL As String Dim Maxed As String = FormWindowState.Normal Dim FullScreen As String = False Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click If FullScreen = False Then FullScreen = True If Me.WindowState = FormWindowState.Maximized Then Me.WindowState = FormWindowState.Normal Maxed = FormWindowState.Maximized End If Loc = Me.Location Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None Me.TopMost = True WL = Me.Width HL = Me.Height Me.Height = System.Windows.Forms.Screen.PrimaryScreen.Bounds.Height.ToString() Me.Width = System.Windows.Forms.Screen.PrimaryScreen.Bounds.Width.ToString() Me.Location = New Point(0, 0) End If End Sub Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click If FullScreen = True Then FullScreen = False Me.TopMost = False Me.Height = HL Me.Width = WL Me.Location = Loc Me.FormBorderStyle = Windows.Forms.FormBorderStyle.Sizable If Maxed = FormWindowState.Maximized Then Me.WindowState = FormWindowState.Maximized End If End If End Sub End Class
je passais par là et juste une chose qui m'a un peu gêné : essai d'utiliser les bon types plutôt que de passer par des string et utiliser des conversions implicites, c'est un bon réflexe à prendre dès le début et ça change beaucoup ensuite la vitesse d'exécution lors de l'utilisation de boucles etc..
enfin bon sinon ton code à l'air bon, je crois que c'est la seule méthode pour afficher en plein écran sans utiliser les api, il pourrait juste être un peu "simplifié" :
Public Class Form1
Private previousFormState As FormWindowState = WindowState()
Private fullScreen As Boolean = False
Private previousSize As Size = Size()
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If Not fullScreen Then
previousSize = Size()
previousFormState = WindowState()
FormBorderStyle = Windows.Forms.FormBorderStyle.None
WindowState = Windows.Forms.FormWindowState.Maximized
Size = Windows.Forms.Screen.FromHandle(Me.Handle()).Bounds.Size()
TopMost = True
fullScreen = True
End If
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
FormBorderStyle = Windows.Forms.FormBorderStyle.Sizable
WindowState = previousFormState
Size = previousSize
TopMost = False
fullScreen = False
End Sub
End Class
Après le stockage et le changement de la taille de la fenêtre ne servent à rien ici il me semble car cela se fait automatiquement en changeant la propriété WindowState().
Voilà, bonne journée et bonne continuation !
Bonne continuation :)
Autant pour moi, mais comme je valide la propriété "Masquer automatiquement la barre des tâches" je n'ai pas remarqué la différence.
A+
Mon code permet justement de prendre la hauteur et la largeur de l'écran et de la définir comme Height et Width de la form, puis de mettre la form en TopMost.
Donc je ne cherche pas midi à quatorze heure ;D !
Je pense que tu cherche un peu midi à quatorze heure :-)
Private Sub Form1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Click
If Me.WindowState = FormWindowState.Maximized Then
Me.WindowState = FormWindowState.Normal
Me.FormBorderStyle = Windows.Forms.FormBorderStyle.Sizable
Else
Me.WindowState = FormWindowState.Maximized
Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None
End If
End Sub
Fait la même chose.
A+
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.