Claiyah
Messages postés580Date d'inscriptionmercredi 20 août 2008StatutMembreDernière intervention20 avril 2010
-
13 oct. 2008 à 11:19
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 2014
-
14 oct. 2008 à 21:06
bonjour tout le monde
svp j'ai un petit soucis avec mon application
je veut bien que mon application ne se déplace pas hors de l'écran
je vais vous expliqué un peut : quand on déplace le form je veut pas qu'il dépasse la limite de l'écran c'est à dire qu'on peut pas le déplacé hors du l'écran
j'espère que vous pouvez m'aider parceque j'ai vraiment besoin de le faire
'-* Sauvegarde position initial de Frm
iOldTop = Form1.Top
iOldLeft = Form1.Left
End Sub
Private Sub Timer1_Timer()
'-* Test Position
If (Form1.Top + Form1.Height) > Screen.Height Or Form1.Top < 0 Then MsgBox "Hors limite": bBadPos = True
If (Form1.Left + Form1.Width) > Screen.Width Or Form1.Left < 0 Then MsgBox "Hors limite": bBadPos = True
'-* Si erreur Test, restitue position initial de la Frm
If bBadPos Then
Form1.Top = iOldTop
Form1.Left = iOldLeft
bBadPos = False
End If
Claiyah
Messages postés580Date d'inscriptionmercredi 20 août 2008StatutMembreDernière intervention20 avril 20103 13 oct. 2008 à 17:27
merci beaucoup pour votre aide
j'ai retiré ce code en conclusion
un timer de valeur 10
If Me.Top < 0 Then Me.Top = "0"
If Me.Left < 0 Then Me.Left = "0"
If (Me.Top + Me.Height) > Screen.Height Then Me.Top = (Screen.Height - Me.Height)
If (Me.Left + Me.Width) > Screen.Width Then Me.Left = (Screen.Width - Me.Width)
merci énormement
Les yeux montrent la force de l'âme
lillith212
Messages postés1229Date d'inscriptionvendredi 16 novembre 2007StatutMembreDernière intervention16 juin 2009 13 oct. 2008 à 12:08
Salut,
Tu récupère la taille de l'écran en paramètre et tu compare avec les valeurs left, right, top etc...
Bon courage
S.L.B.
<hr />-- Le règlement tu liras -- Des recherches tu feras -- Le style SMS tu banniras --
-- De la validation pertinente tu feras -- Du respect tu auras -- <
Vous n’avez pas trouvé la réponse que vous recherchez ?
L'évènement move d'une form n'est pas déclenché par le déplacement de la form en se servant de la barre de titre)....
Il lui faut :
- soit utiliser un timer (lourd...)
- soit inhiber le déplacement dans le menu système de la form et gérer le déplacement autrement, s'il veut le permettre).0
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 13 oct. 2008 à 15:09
En d'autres termes : le menu système de la Form est inclus dans la barre de titre et comprend le déplacement. La barre de titre, elle, ne répond pas à un évènement Move de VB (et encore moins de la Form).
cs_Exploreur
Messages postés4821Date d'inscriptionlundi 11 novembre 2002StatutMembreDernière intervention15 novembre 201615 13 oct. 2008 à 15:53
Oups.....
Remplace dans Timer :
'-* Si erreur Test, restitue ancienne position de la Frm
If bBadPos Then
Form1.Top = iOldTop
Form1.Left = iOldLeft
bBadPos = False
End If
Par :
'-* Si erreur Test, restitue ancienne position de la Frm
If bBadPos Then
Form1.Top = iOldTop
Form1.Left = iOldLeft
bBadPos = False
Else
'-* Sauvegarde position initial de Frm
iOldTop = Form1.Top
iOldLeft = Form1.Left
End If
Et supprime dans Form_Load :
'-* Sauvegarde position initial de Frm
iOldTop = Form1.Top
iOldLeft = Form1.Left
cs_Exploreur
Messages postés4821Date d'inscriptionlundi 11 novembre 2002StatutMembreDernière intervention15 novembre 201615 13 oct. 2008 à 16:54
Lol...en relisant ta demande...elle est contradictoire....Tu dis que tu ne veux pas qu'elle sorte de l'écran et après tu veux qu'elle sorte finalement de l'écran...Tu veux quoi au final ??
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 14 oct. 2008 à 21:06
L'aveugle n'a pas d'yeux et donc rien à montrer, sinon que la force de son âme est souvent très supérieure, ami....(et il sait le faire, crois-moi... ouvre donc bien tes yeux... )