Bonjour , je posséde sur ma form un label et une picturebox , et j'aimerai savoir , en MODE EXPLOITATION , s'il est possible de pouvoir les deplacer sur la form ?????
merci d'avance
amicalement lucas
Bonjour , je posséde sur ma form un label et une picturebox , et j'aimerai savoir , en MODE EXPLOITATION , s'il est possible de pouvoir les deplacer sur la form ?????
merci d'avance
amicalement lucas
Modification des propriétés Top et Left ou utilisation de la méthode Move.
Sinon tu fait un drag & drop. regarde dans les FAQ.
ouais j'ai regarder le FAQ et des trucs sur le net mais je trouve rien pour faire bouger un control en DIRECT , je m'explique j'aimerai que lorsque je reste cliqué sur mon controle , que je puisse le deplacer REELEMENT , et non pas deplacer un curseur vide à la place .....
cela, précisément, s'appelle le drag and drop
et encore, si c'est sur ta form, tu peux le faire manuellement.
voila , c'est bon , sans drag and drop j'ai reussi à deplacer mes controles
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 Option Explicit Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then Command1.Top = Command1.Top + (Y - Command1.Height) Command1.Left = Command1.Left + (X - Command1.Width) End If End Sub Private Sub picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then Picture1.Top = Picture1.Top + (Y - Picture1.Height) Picture1.Left = Picture1.Left + (X - Picture1.Width) End If End Sub Private Sub label1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then Label1.Top = Label1.Top + (Y - Label1.Height) Label1.Left = Label1.Left + (X - Label1.Width) End If End Sub
Aie ...!
Ce qui s'appelle du drag and drop... et que tu as fait imparfaitement (tes contrôles sont mal "maitrisés" dès le départ).
Pourquoi ?
Par ce que tu n'as pas utilisé les 1ères coordonnées, telles qu'elle étaient au mouseDown, pour assurer un déplacement parfaitement contrôlé !![]()
Allez !
sur une form : un bouton de command command1 et le code suivant
J'ai choisi ici d'utiliser le bouton gauche de la souris pour ces glisser/déposer
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Option Explicit Dim x0 As Integer, Y0 As Integer Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 1 Then Command1.Move Int((Command1.Left + ScaleX(X, 1, 3)) - x0), Int((Command1.Top + ScaleY(Y, 1, 3)) - Y0) End If End Sub Private Sub command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 1 Then Y0 = ScaleY(Y, 1, 3) x0 = ScaleX(X, 1, 3) End If End Sub
les variables x0 et y0 sont les mêmes pour tous tes objets (ne fais pas un x0 et un y0 par objet, hein ...)
en effet , utiliser l'evenement mousedown aprés mousemove est mieu ^^
merki bcp
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager