DÉPLACER UNE FEUILLE SANS CAPTION

cs_EBArtSoft Messages postés 4525 Date d'inscription dimanche 29 septembre 2002 Statut Modérateur Dernière intervention 22 avril 2019 - 10 oct. 2003 à 21:31
vbdaniel Messages postés 2 Date d'inscription vendredi 26 décembre 2003 Statut Membre Dernière intervention 24 janvier 2004 - 24 janv. 2004 à 09:41
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/16982-deplacer-une-feuille-sans-caption

vbdaniel Messages postés 2 Date d'inscription vendredi 26 décembre 2003 Statut Membre Dernière intervention 24 janvier 2004
24 janv. 2004 à 09:41
Pas mal comme source et grand bravo à Jack
jouarenne01 Messages postés 3 Date d'inscription lundi 20 octobre 2003 Statut Membre Dernière intervention 26 octobre 2003
20 oct. 2003 à 12:12
Un grand merci à jack pour ce code.
Jusqu'à présent j'utilisais un code qui a très bien fonctionné depuis Win 3.1 jusqu'à Win 98-SE mais plus sous XP.
Je peux à nouveau déplacer mes fenêtres. Merci !
zelze Messages postés 234 Date d'inscription mardi 31 décembre 2002 Statut Membre Dernière intervention 30 juillet 2008
13 oct. 2003 à 21:16
Tu as entièrement raison mais c'est un truc que j'ai bidouillé vite fait sans m'atarder sur les détailles mais ça marche sans problème avec String...
Aller @+ et bon prog.
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
11 oct. 2003 à 19:40
Merci Zelze
C'est vrai que je me suis un peu compliqué la vie !
Juste une chose, je ne pense pas que PosY en String soit adapté :
Dim PosX as Single, PosY As Single
Golog Messages postés 224 Date d'inscription jeudi 31 janvier 2002 Statut Membre Dernière intervention 22 décembre 2009
11 oct. 2003 à 18:54
Dsl de venir interrompre se bon lot d'exemple ... mais on peu retrouvé tout cela sur le site avec une simple recherche.
zelze Messages postés 234 Date d'inscription mardi 31 décembre 2002 Statut Membre Dernière intervention 30 juillet 2008
11 oct. 2003 à 13:56
Il y a une méthode qui est très simple:

Dim PosX, PosY As String
Dim Deplacement As Boolean


Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
PosX = X
PosY = Y
Deplacement = True
End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Deplacement = True Then
Me.Top = Me.Top + Y - PosY
Me.Left = Me.Left + X - PosX
End If
End Sub

Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
Deplacement = False
End Sub

Aller @+
cs_EBArtSoft Messages postés 4525 Date d'inscription dimanche 29 septembre 2002 Statut Modérateur Dernière intervention 22 avril 2019 9
10 oct. 2003 à 21:31
tu peut aussi ecrire :

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
ReleaseCapture
SendMessage Me.hwnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&
End Sub

mais cette methode comporte certain probleme lors des changement de focus ...

by@