Creer un mode Edition

Résolu
Signaler
Messages postés
66
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
29 décembre 2018
-
Messages postés
66
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
29 décembre 2018
-
Bonjour

Je ne sait pas si je vais etre clair....
je voudrai creer un mode edition dans mon appli, c a dire que je voudrai pouvoir permettre a l'utilisateur de dupliquer un objet picture as sa guise et de le placer ou il veut dans l'interface (la form) (exemple placer 3,4ou 5 billards selon le type de sa salle)

Puis repasser en mode normal d'utilisation...

Merci

9 réponses

Messages postés
1788
Date d'inscription
mardi 7 novembre 2000
Statut
Membre
Dernière intervention
11 mars 2006
26
Bonsoir,
Pour déplacer une Image avec la souris.(tu peux faire avec n'importe quel contrôles)

Option Explicit
Dim xTemp, xTemp2 As Long
Dim yTemp, yTemp2 As Long

Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single)
Source.Move X - xTemp, Y - yTemp
End Sub
Private Sub Image1_DragDrop(Source As Control, X As Single, Y As Single)
Source.Move xTemp2 + X - xTemp, xTemp2 + Y - yTemp
End Sub
Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Image1.Drag
xTemp = X
yTemp = Y
xTemp2 = Image1.Left
yTemp2 = Image1.Top
End Sub

jpleroisse

Si une réponse vous convient, cliquez Réponse Acceptée.
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 109 internautes nous ont dit merci ce mois-ci

Messages postés
1788
Date d'inscription
mardi 7 novembre 2000
Statut
Membre
Dernière intervention
11 mars 2006
26
Re,
Ce code créée un deuxième contrôle Image et permet de la déplacer aussi.
Plusieurs en une seule fois ça, pour l'instant, je ne sais pas.

Option Explicit
Private WithEvents imgObj As Image
Dim xTemp, xTemp2 As Long
Dim yTemp, yTemp2 As Long

Private Sub Command1_Click()
Set imgObj = Controls.Add("VB.Image", "imgObj")
With imgObj
.Visible = True
.Width = 2000
.Picture = LoadPicture("C:\Program Files\Microsoft Visual Studio\Common\Graphics\Icons\Misc\Question.ico")
.Top = 1000
.Left = 1000
End With
End Sub
Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single)
Source.Move X - xTemp, Y - yTemp
End Sub
Private Sub Image1_DragDrop(Source As Control, X As Single, Y As Single)
Source.Move xTemp2 + X - xTemp, xTemp2 + Y - yTemp
End Sub
Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Image1.Drag
xTemp = X
yTemp = Y
xTemp2 = Image1.Left
yTemp2 = Image1.Top
End Sub
Private Sub imgObj_DragDrop(Source As Control, X As Single, Y As Single)
Source.Move xTemp2 + X - xTemp, xTemp2 + Y - yTemp
End Sub
Private Sub imgObj_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
imgObj.Drag
xTemp = X
yTemp = Y
xTemp2 = Image1.Left
yTemp2 = Image1.Top

End Sub

jpleroisse



Si une réponse vous convient, cliquez Réponse Acceptée.
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 109 internautes nous ont dit merci ce mois-ci

Messages postés
438
Date d'inscription
samedi 24 mai 2003
Statut
Membre
Dernière intervention
23 janvier 2011
1
Pour le déplacement déjà voila un exemple que j'utilise pour un objet label qui s'apelle label19 :

Private
_MouseDown As Boolean


Private _MouseX As Integer


Private _MouseY As Integer


Private _DepX As Integer


Private _DepY As Integer


Private Sub label19_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles
Label19.MouseDown


Label19.Cursor = System.Windows.Forms.Cursors.SizeAll


_MouseDown =
True ' Pour indiquer qu'on appuie sur la souris


_MouseX = System.Windows.Forms.Cursor.Position.X
' On sauvegarde les coordonnées actuelles de la souris


_MouseY = System.Windows.Forms.Cursor.Position.Y


End Sub


Private Sub label19_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles
Label19.MouseMove


If _MouseDown Then


' On calcule le déplacement par rapport aux dernières coordonnées de la souris(sauvegardés)


_DepX = System.Windows.Forms.Cursor.Position.X - _MouseX


_DepY = System.Windows.Forms.Cursor.Position.Y - _MouseY


' On déplace le Panel ou eventuellement un autre objet


Panel4.Location =
New Point(Panel4.Location.X + _DepX, Panel4.Location.Y + _DepY)


' On sauvegarde les nouvelles coordonées de la souris


_MouseX = System.Windows.Forms.Cursor.Position.X


_MouseY = System.Windows.Forms.Cursor.Position.Y


End If


End Sub


Private Sub label19_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles
Label19.MouseUp


' On a relaché la souris


Label19.Cursor = System.Windows.Forms.Cursors.Default


_MouseDown =
False


End Sub
Messages postés
66
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
29 décembre 2018

euh j'arrive âs a exploiter ton code....té en vb6 ou en vbnet
(moi en vb6)?
Messages postés
438
Date d'inscription
samedi 24 mai 2003
Statut
Membre
Dernière intervention
23 janvier 2011
1
Ah mince ! Moi c'est du VB.Net ! Et j'ai complétement oublié le VB6 ! donc je sais pas comment tu peu l'utiliser ! Aie !
Les événements MouseUP, MouseMove n'héxiste pas dans VB6 ?
Messages postés
1411
Date d'inscription
mercredi 6 août 2003
Statut
Membre
Dernière intervention
3 mars 2019
1
Jette un oeil ici cela pourra peut etre t'aider

http://www.vbfrance.com/code.aspx?id=21742

Bonne prog
++
Messages postés
66
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
29 décembre 2018

euh je vais essayer de traduire alors merci et je vais jeter un oiel sur le code de bouv merci bcp
Messages postés
66
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
29 décembre 2018

bon le code de jpleroissejpleroisse est top....

comment je fais pour que l'utilisateur genere autant d'objet picture qu'il lui faut?

merci
Messages postés
66
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
29 décembre 2018

merci jpleroisse

c'est ça que je voulais...je vais essayer de faire en sorte de pouvoir en creer plusieurs.

Je pense qu'il y a une petite erreur dans le code dans la fonction suivante...

Private Sub imgObj_DragDrop(Source As Control, X As Single, Y As Single)
Source.Move xTemp2 + X - xTemp, xTemp2 + Y - yTemp
End Sub
Private Sub imgObj_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
imgObj.Drag
xTemp = X
yTemp = Y
xTemp2 = imgObj.left ' et non "Image1.Left"
yTemp2 = imgObj ' et non "Image1.Top"

End Sub

remplacer image1 par imgObj enfin g fait la modif et ça marche

merci encore