DEPLACER UN FORMULAIRE SANS BARRE DE TITRE

The_Gregg - 3 déc. 2001 à 21:23
djgab21
Messages postés
66
Date d'inscription
vendredi 15 juin 2007
Statut
Membre
Dernière intervention
19 mai 2011
- 1 mars 2009 à 14:38
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/74-deplacer-un-formulaire-sans-barre-de-titre

djgab21
Messages postés
66
Date d'inscription
vendredi 15 juin 2007
Statut
Membre
Dernière intervention
19 mai 2011

1 mars 2009 à 14:38
Parfait ! C'est ce qu'il me fallait !
Renfield
Messages postés
17287
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
71
22 janv. 2008 à 23:55
ravi de l'entendre ^^
gloomy64
Messages postés
46
Date d'inscription
lundi 18 octobre 2004
Statut
Membre
Dernière intervention
3 avril 2008

22 janv. 2008 à 23:40
Honnetement, j'avous que le code est très mauvais... et au départ c'étais pour un pote que je l'avais postée... qui la repris d'ailleurs... desolès, j'suis un peu surcharger ces temps et je fais un peu n'importe quoi, enfin Renfield, merci de pas etre trop mechant avec moi, de quand meme corriger mon code et j'promets de faire mieux la prochaine fois.
Renfield
Messages postés
17287
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
71
20 janv. 2008 à 09:15
c'est un code standard, Gloomy64
néanmoins, j'y décèle quelques indélicatesses.

ValRetourLng n'est pas déclaré (pas d'utilisation de l'Option Explicit ?)

ValRetourLng ne sert de toutes facon a rien puisqu'il n'est ni testé, ni renvoyé

MoveForm est une fonction de type Variant (pas de type définit)... et qui ne renvoie rien...

tu transmets à un parametre d'API définit en ByRef As Any la valeur 0& ... donnes lui plutot ByVal 0& si tu ne veux pas crasher un jour ou l'autre ton application.

tu demandes le MoveForm dans le _Load ????
pourquoi ne pas utiliser l'evenemtn adéquat (MouseDown, par exemple)

je n'ai pas compris pourquoi tu as posté...
je sais que tu n'as fait que remanier le code de Nix, qui n''est pas terrible, terrible, mais le poids des années est là !
gloomy64
Messages postés
46
Date d'inscription
lundi 18 octobre 2004
Statut
Membre
Dernière intervention
3 avril 2008

19 janv. 2008 à 22:44
'Dans un module

Private Declare Function SendMessageA Lib "User32" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Sub ReleaseCapture Lib "User32"()

Const WM_NCLBUTTONDOWN = &HA1
Const HTCAPTION = 2

Function MoveForm(Who As Form)
Call ReleaseCapture
ValRetourLng = SendMessageA(Who.hWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&)
End Sub

'Dans une Form
Private sub Form_Load()
MoveForm Me
End Sub
Afficher les 13 commentaires