Dans une picturebox contenant comme picture un carte, j'ai mis une
autre image (par dessus la première) mais très petite representant une
bouée
Je voudrais pouvoir déplacer cette bouée avec la souris
Quelqu'un a t'il une piste pour y arriver
Merci
JP
--
Adresse mail : john-pet@wanadoo.fr
Ceci est une signature automatique de MesNews.
Site : http://www.mesnews.net
Dans une picturebox contenant comme picture un carte, j'ai mis une autre image (par dessus la première) mais très petite representant une bouée Je voudrais pouvoir déplacer cette bouée avec la souris Quelqu'un a t'il une piste pour y arriver
Peut être t'inspirer de la gestion des sprites. Par exemple :
Dans une picturebox contenant comme picture un carte, j'ai mis une autre
image (par dessus la première) mais très petite representant une bouée
Je voudrais pouvoir déplacer cette bouée avec la souris
Quelqu'un a t'il une piste pour y arriver
Peut être t'inspirer de la gestion des sprites. Par exemple :
Dans une picturebox contenant comme picture un carte, j'ai mis une autre image (par dessus la première) mais très petite representant une bouée Je voudrais pouvoir déplacer cette bouée avec la souris Quelqu'un a t'il une piste pour y arriver
Peut être t'inspirer de la gestion des sprites. Par exemple :
mais ce que je cherche c'est de prendre l'a bouée avec un clic droit et la déposer en relachant la souris
JP
Jacques93 a formulé la demande :
Bonjour John-Pet, John-Pet a écrit :
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une autre image (par dessus la première) mais très petite representant une bouée Je voudrais pouvoir déplacer cette bouée avec la souris Quelqu'un a t'il une piste pour y arriver
Peut être t'inspirer de la gestion des sprites. Par exemple :
-- Adresse mail : Ceci est une signature automatique de MesNews. Site : http://www.mesnews.net
Merci pour ta réponse
mais ce que je cherche c'est de prendre l'a bouée avec un clic droit et
la déposer en relachant la souris
JP
Jacques93 a formulé la demande :
Bonjour John-Pet,
John-Pet a écrit :
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une autre
image (par dessus la première) mais très petite representant une bouée
Je voudrais pouvoir déplacer cette bouée avec la souris
Quelqu'un a t'il une piste pour y arriver
Peut être t'inspirer de la gestion des sprites. Par exemple :
mais ce que je cherche c'est de prendre l'a bouée avec un clic droit et la déposer en relachant la souris
JP
Jacques93 a formulé la demande :
Bonjour John-Pet, John-Pet a écrit :
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une autre image (par dessus la première) mais très petite representant une bouée Je voudrais pouvoir déplacer cette bouée avec la souris Quelqu'un a t'il une piste pour y arriver
Peut être t'inspirer de la gestion des sprites. Par exemple :
-- Adresse mail : Ceci est une signature automatique de MesNews. Site : http://www.mesnews.net
David
Bonjour John-Pet,
Je pense ce cet ambrion de programme vous sera utile. Je vous mets le programme tel quel, brute de décoffrage. A vous d'extraire ce qui vous est vraiment utile. Les 2 boutons ne vous seront d'aucune utilité.
http://users.skynet.be/DAVID/Fichiers_Tempo.htm
et cliquez sur déplacement -- a+ Jean-Pol Site Web : www.colovid.be Site Web perso pour le fun : http://users.skynet.be/DAVID/
"John-Pet" a écrit dans le message de news:
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une autre image (par dessus la première) mais très petite representant une bouée Je voudrais pouvoir déplacer cette bouée avec la souris Quelqu'un a t'il une piste pour y arriver
Merci
JP
-- Adresse mail : Ceci est une signature automatique de MesNews. Site : http://www.mesnews.net
Bonjour John-Pet,
Je pense ce cet ambrion de programme
vous sera utile.
Je vous mets le programme tel quel, brute de décoffrage.
A vous d'extraire ce qui vous est vraiment utile.
Les 2 boutons ne vous seront d'aucune utilité.
http://users.skynet.be/DAVID/Fichiers_Tempo.htm
et cliquez sur déplacement
--
a+ Jean-Pol
Site Web : www.colovid.be
Site Web perso pour le fun : http://users.skynet.be/DAVID/
"John-Pet" <John-Pet@wanadoo.fr> a écrit dans le message de news:
mn.3af57d8a8c7b59a9.24667@wanadoo.fr...
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une autre
image (par dessus la première) mais très petite representant une bouée
Je voudrais pouvoir déplacer cette bouée avec la souris
Quelqu'un a t'il une piste pour y arriver
Merci
JP
--
Adresse mail : john-pet@wanadoo.fr
Ceci est une signature automatique de MesNews.
Site : http://www.mesnews.net
Je pense ce cet ambrion de programme vous sera utile. Je vous mets le programme tel quel, brute de décoffrage. A vous d'extraire ce qui vous est vraiment utile. Les 2 boutons ne vous seront d'aucune utilité.
http://users.skynet.be/DAVID/Fichiers_Tempo.htm
et cliquez sur déplacement -- a+ Jean-Pol Site Web : www.colovid.be Site Web perso pour le fun : http://users.skynet.be/DAVID/
"John-Pet" a écrit dans le message de news:
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une autre image (par dessus la première) mais très petite representant une bouée Je voudrais pouvoir déplacer cette bouée avec la souris Quelqu'un a t'il une piste pour y arriver
Merci
JP
-- Adresse mail : Ceci est une signature automatique de MesNews. Site : http://www.mesnews.net
bahn po
John-Pet a exprimé avec précision :
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une autre image (par dessus la première) mais très petite representant une bouée Je voudrais pouvoir déplacer cette bouée avec la souris Quelqu'un a t'il une piste pour y arriver
Merci
JP
Option Explicit
Private Type POINTAPI X As Long Y As Long End Type Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Sub Picture2_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim p As POINTAPI
If Button = 1 Then Call GetCursorPos(p) Picture2.Left = p.X * 15 - Form1.Left - 500 Picture2.Top = p.Y * 15 - Form1.Top - 500 Picture2.Refresh End If
end sub
Ci-dessus un exemple d'une picture2 qui se déplace quand tu click gauche dessus. Désolé pour la formule "p.X * 15 - Form1.Left - 500", j'ai pas trouvé mieux, mais ça marche :)
Bonne soire.
John-Pet a exprimé avec précision :
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une autre
image (par dessus la première) mais très petite representant une bouée
Je voudrais pouvoir déplacer cette bouée avec la souris
Quelqu'un a t'il une piste pour y arriver
Merci
JP
Option Explicit
Private Type POINTAPI
X As Long
Y As Long
End Type
Private Declare Function GetCursorPos Lib "user32" (lpPoint As
POINTAPI) As Long
Private Sub Picture2_MouseMove(Button As Integer, Shift As Integer, X
As Single, Y As Single)
Dim p As POINTAPI
If Button = 1 Then
Call GetCursorPos(p)
Picture2.Left = p.X * 15 - Form1.Left - 500
Picture2.Top = p.Y * 15 - Form1.Top - 500
Picture2.Refresh
End If
end sub
Ci-dessus un exemple d'une picture2 qui se déplace quand tu click
gauche dessus. Désolé pour la formule "p.X * 15 - Form1.Left - 500",
j'ai pas trouvé mieux, mais ça marche :)
Dans une picturebox contenant comme picture un carte, j'ai mis une autre image (par dessus la première) mais très petite representant une bouée Je voudrais pouvoir déplacer cette bouée avec la souris Quelqu'un a t'il une piste pour y arriver
Merci
JP
Option Explicit
Private Type POINTAPI X As Long Y As Long End Type Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Sub Picture2_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim p As POINTAPI
If Button = 1 Then Call GetCursorPos(p) Picture2.Left = p.X * 15 - Form1.Left - 500 Picture2.Top = p.Y * 15 - Form1.Top - 500 Picture2.Refresh End If
end sub
Ci-dessus un exemple d'une picture2 qui se déplace quand tu click gauche dessus. Désolé pour la formule "p.X * 15 - Form1.Left - 500", j'ai pas trouvé mieux, mais ça marche :)
Bonne soire.
Jacques93
Bonjour John-Pet, John-Pet a écrit :
Merci pour ta réponse
mais ce que je cherche c'est de prendre l'a bouée avec un clic droit et la déposer en relachant la souris
Il suffit d'adapter le code (et l'image). Dans le code proposé, Homer suit la souris; tu peux modifier assez simplement le comportement, en ajoutant, par exemple une variable booléenne :
Dim bMouseDown As Boolean
dans le code de frmJeux, et adapter le code pour déterminer si on a cliqué sur Homer :
Private Sub PicFond_MouseDown(Button As Integer, _ Shift As Integer, _ X As Single, Y As Single) ' Vérifie si on a cliqué sur Homer avec le ' bouton gauche bMouseDown = (Button = vbLeftButton) And _ X >= Sprite(Homer).X And _ X <= (Sprite(Homer).X + Sprite(Homer).Largeur) And _ Y >= Sprite(Homer).Y And _ Y <= (Sprite(Homer).Y + Sprite(Homer).Hauteur) End Sub
Private Sub PicFond_MouseUp(Button As Integer, _ Shift As Integer, _ X As Single, Y As Single) bMouseDown = False
End Sub
Private Sub PicFond_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
' Mémorise la position de la souris pour placer Homer ' Si on a pas cliqué sur Homer on sort => Homer ne bouge pas. If Not bMouseDown Then Exit Sub Sprite(Homer).X = X Sprite(Homer).Y = Y
L'intérêt, à mon sens, de cette méthode, est la fluidité du déplacement, pas de d'effets de trainée, pas de déplacement saccadé.
--
Cordialement,
Jacques.
Bonjour John-Pet,
John-Pet a écrit :
Merci pour ta réponse
mais ce que je cherche c'est de prendre l'a bouée avec un clic droit et
la déposer en relachant la souris
Il suffit d'adapter le code (et l'image). Dans le code proposé, Homer
suit la souris; tu peux modifier assez simplement le comportement, en
ajoutant, par exemple une variable booléenne :
Dim bMouseDown As Boolean
dans le code de frmJeux, et adapter le code pour déterminer si on a
cliqué sur Homer :
Private Sub PicFond_MouseDown(Button As Integer, _
Shift As Integer, _
X As Single, Y As Single)
' Vérifie si on a cliqué sur Homer avec le
' bouton gauche
bMouseDown = (Button = vbLeftButton) And _
X >= Sprite(Homer).X And _
X <= (Sprite(Homer).X + Sprite(Homer).Largeur) And _
Y >= Sprite(Homer).Y And _
Y <= (Sprite(Homer).Y + Sprite(Homer).Hauteur)
End Sub
Private Sub PicFond_MouseUp(Button As Integer, _
Shift As Integer, _
X As Single, Y As Single)
bMouseDown = False
End Sub
Private Sub PicFond_MouseMove(Button As Integer, Shift As Integer, X As
Single, Y As Single)
' Mémorise la position de la souris pour placer Homer
' Si on a pas cliqué sur Homer on sort => Homer ne bouge pas.
If Not bMouseDown Then Exit Sub
Sprite(Homer).X = X
Sprite(Homer).Y = Y
L'intérêt, à mon sens, de cette méthode, est la fluidité du
déplacement, pas de d'effets de trainée, pas de déplacement saccadé.
mais ce que je cherche c'est de prendre l'a bouée avec un clic droit et la déposer en relachant la souris
Il suffit d'adapter le code (et l'image). Dans le code proposé, Homer suit la souris; tu peux modifier assez simplement le comportement, en ajoutant, par exemple une variable booléenne :
Dim bMouseDown As Boolean
dans le code de frmJeux, et adapter le code pour déterminer si on a cliqué sur Homer :
Private Sub PicFond_MouseDown(Button As Integer, _ Shift As Integer, _ X As Single, Y As Single) ' Vérifie si on a cliqué sur Homer avec le ' bouton gauche bMouseDown = (Button = vbLeftButton) And _ X >= Sprite(Homer).X And _ X <= (Sprite(Homer).X + Sprite(Homer).Largeur) And _ Y >= Sprite(Homer).Y And _ Y <= (Sprite(Homer).Y + Sprite(Homer).Hauteur) End Sub
Private Sub PicFond_MouseUp(Button As Integer, _ Shift As Integer, _ X As Single, Y As Single) bMouseDown = False
End Sub
Private Sub PicFond_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
' Mémorise la position de la souris pour placer Homer ' Si on a pas cliqué sur Homer on sort => Homer ne bouge pas. If Not bMouseDown Then Exit Sub Sprite(Homer).X = X Sprite(Homer).Y = Y
L'intérêt, à mon sens, de cette méthode, est la fluidité du déplacement, pas de d'effets de trainée, pas de déplacement saccadé.
--
Cordialement,
Jacques.
Jacques93
John-Pet a écrit :
Merci pour ta réponse
mais ce que je cherche c'est de prendre l'a bouée avec un clic droit et la déposer en relachant la souris
Ci-joint un petit programme simplifié, par rapport au lien, qui semble répondre à ta demande. Sauf si la bouée est trop grosse ;-)
<http://cjoint.com/?kiu2KeF2Z1>
Difficile à placer ici, avec les images, et le code, pas très long, mais les coupures de lignes sont fréquentes sur les API. Et mes pages perso Orange sont inaccessibles :-(
Il faudrait fignoler pour pas sortir de l'écran, ou plutôt de la feuille, mais c'est de l'ordre de la finition ...
Jacques93 a formulé la demande :
Bonjour John-Pet, John-Pet a écrit :
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une autre image (par dessus la première) mais très petite representant une bouée Je voudrais pouvoir déplacer cette bouée avec la souris Quelqu'un a t'il une piste pour y arriver
Peut être t'inspirer de la gestion des sprites. Par exemple :
Ci-joint un petit programme simplifié, par rapport au lien, qui semble répondre à ta demande. Sauf si la bouée est trop grosse ;-)
<http://cjoint.com/?kiu2KeF2Z1> --
Cordialement,
Jacques.
John-Pet a écrit :
Merci pour ta réponse
mais ce que je cherche c'est de prendre l'a bouée avec un clic droit et
la déposer en relachant la souris
Ci-joint un petit programme simplifié, par rapport au lien, qui semble
répondre à ta demande. Sauf si la bouée est trop grosse ;-)
<http://cjoint.com/?kiu2KeF2Z1>
Difficile à placer ici, avec les images, et le code, pas très long, mais
les coupures de lignes sont fréquentes sur les API. Et mes pages perso
Orange sont inaccessibles :-(
Il faudrait fignoler pour pas sortir de l'écran, ou plutôt de la
feuille, mais c'est de l'ordre de la finition ...
Jacques93 a formulé la demande :
Bonjour John-Pet,
John-Pet a écrit :
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une
autre image (par dessus la première) mais très petite representant
une bouée
Je voudrais pouvoir déplacer cette bouée avec la souris
Quelqu'un a t'il une piste pour y arriver
Peut être t'inspirer de la gestion des sprites. Par exemple :
mais ce que je cherche c'est de prendre l'a bouée avec un clic droit et la déposer en relachant la souris
Ci-joint un petit programme simplifié, par rapport au lien, qui semble répondre à ta demande. Sauf si la bouée est trop grosse ;-)
<http://cjoint.com/?kiu2KeF2Z1>
Difficile à placer ici, avec les images, et le code, pas très long, mais les coupures de lignes sont fréquentes sur les API. Et mes pages perso Orange sont inaccessibles :-(
Il faudrait fignoler pour pas sortir de l'écran, ou plutôt de la feuille, mais c'est de l'ordre de la finition ...
Jacques93 a formulé la demande :
Bonjour John-Pet, John-Pet a écrit :
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une autre image (par dessus la première) mais très petite representant une bouée Je voudrais pouvoir déplacer cette bouée avec la souris Quelqu'un a t'il une piste pour y arriver
Peut être t'inspirer de la gestion des sprites. Par exemple :
voilà différentes façon pour résoudre mon problème avec chacun des + et des -
Cordialement
JP
-- Adresse mail : Ceci est une signature automatique de MesNews. Site : http://www.mesnews.net
John-Pet
merci pour ton exemple j'étais en train de simplifier le homer et cie
et voilà que ça me tombe du ciel ça me va très bien
merci encore
Cordialement
JP
Jacques93 avait écrit le 08/10/2008 :
John-Pet a écrit :
Merci pour ta réponse
mais ce que je cherche c'est de prendre l'a bouée avec un clic droit et la déposer en relachant la souris
Ci-joint un petit programme simplifié, par rapport au lien, qui semble répondre à ta demande. Sauf si la bouée est trop grosse ;-)
<http://cjoint.com/?kiu2KeF2Z1>
Difficile à placer ici, avec les images, et le code, pas très long, mais les coupures de lignes sont fréquentes sur les API. Et mes pages perso Orange sont inaccessibles :-(
Il faudrait fignoler pour pas sortir de l'écran, ou plutôt de la feuille, mais c'est de l'ordre de la finition ...
Jacques93 a formulé la demande :
Bonjour John-Pet, John-Pet a écrit :
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une autre image (par dessus la première) mais très petite representant une bouée Je voudrais pouvoir déplacer cette bouée avec la souris Quelqu'un a t'il une piste pour y arriver
Peut être t'inspirer de la gestion des sprites. Par exemple :
Ci-joint un petit programme simplifié, par rapport au lien, qui semble répondre à ta demande. Sauf si la bouée est trop grosse ;-)
<http://cjoint.com/?kiu2KeF2Z1>
-- Adresse mail : Ceci est une signature automatique de MesNews. Site : http://www.mesnews.net
merci pour ton exemple
j'étais en train de simplifier le homer et cie
et voilà que ça me tombe du ciel
ça me va très bien
merci encore
Cordialement
JP
Jacques93 avait écrit le 08/10/2008 :
John-Pet a écrit :
Merci pour ta réponse
mais ce que je cherche c'est de prendre l'a bouée avec un clic droit et la
déposer en relachant la souris
Ci-joint un petit programme simplifié, par rapport au lien, qui semble
répondre à ta demande. Sauf si la bouée est trop grosse ;-)
<http://cjoint.com/?kiu2KeF2Z1>
Difficile à placer ici, avec les images, et le code, pas très long, mais les
coupures de lignes sont fréquentes sur les API. Et mes pages perso Orange
sont inaccessibles :-(
Il faudrait fignoler pour pas sortir de l'écran, ou plutôt de la feuille,
mais c'est de l'ordre de la finition ...
Jacques93 a formulé la demande :
Bonjour John-Pet,
John-Pet a écrit :
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une autre
image (par dessus la première) mais très petite representant une bouée
Je voudrais pouvoir déplacer cette bouée avec la souris
Quelqu'un a t'il une piste pour y arriver
Peut être t'inspirer de la gestion des sprites. Par exemple :
merci pour ton exemple j'étais en train de simplifier le homer et cie
et voilà que ça me tombe du ciel ça me va très bien
merci encore
Cordialement
JP
Jacques93 avait écrit le 08/10/2008 :
John-Pet a écrit :
Merci pour ta réponse
mais ce que je cherche c'est de prendre l'a bouée avec un clic droit et la déposer en relachant la souris
Ci-joint un petit programme simplifié, par rapport au lien, qui semble répondre à ta demande. Sauf si la bouée est trop grosse ;-)
<http://cjoint.com/?kiu2KeF2Z1>
Difficile à placer ici, avec les images, et le code, pas très long, mais les coupures de lignes sont fréquentes sur les API. Et mes pages perso Orange sont inaccessibles :-(
Il faudrait fignoler pour pas sortir de l'écran, ou plutôt de la feuille, mais c'est de l'ordre de la finition ...
Jacques93 a formulé la demande :
Bonjour John-Pet, John-Pet a écrit :
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une autre image (par dessus la première) mais très petite representant une bouée Je voudrais pouvoir déplacer cette bouée avec la souris Quelqu'un a t'il une piste pour y arriver
Peut être t'inspirer de la gestion des sprites. Par exemple :
merci pour ton exemple j'étais en train de simplifier le homer et cie
et voilà que ça me tombe du ciel
Euh, étant un drôle de paroissien, je ne sais pas si le ciel ...
ça me va très bien
mais merci du retour :-)
--
Cordialement,
Jacques.
Jacques93
Bonjour bahn po, bahn po a écrit :
John-Pet a exprimé avec précision :
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une autre image (par dessus la première) mais très petite representant une bouée Je voudrais pouvoir déplacer cette bouée avec la souris Quelqu'un a t'il une piste pour y arriver
Merci
JP
Option Explicit
Private Type POINTAPI X As Long Y As Long End Type Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Sub Picture2_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim p As POINTAPI
If Button = 1 Then Call GetCursorPos(p) Picture2.Left = p.X * 15 - Form1.Left - 500 Picture2.Top = p.Y * 15 - Form1.Top - 500 Picture2.Refresh End If
end sub
Ci-dessus un exemple d'une picture2 qui se déplace quand tu click gauche dessus. Désolé pour la formule "p.X * 15 - Form1.Left - 500", j'ai pas trouvé mieux, mais ça marche :)
Le 15, à ma connaissance, est lié aux différentes unités utilisées, le pixel pour une grande partie (si ce n'est la majorité) des Api's, le twips par défaut pour VB (y' toujours pas d'échantillon de twips à Sèvres !!!). Et un Pixel vaut 15 twips( ou Screen.TwipsPerPixel[X-Y]). Jean-Marc ou François ou Patrice, ou ? savent peut être pourquoi, moi pas, mais c'est comme ça depuis un moment. Il me semble toutefois qu'il y avait l'idée, derrière cette unité, d'être indépendant du périphérique (écran , imprimante, etc...) qui n'ont pas la même résolution physique.
Pour le 500, je dirai que c'est lié au type de fenêtre, par exemple sizeable ou non, Fixed Dialog ou non, les bordures, et la barre de titres n'ont pas la même dimension (voir avec GetSystemMetrics)
Mais 500, n'est peut être pas le meilleur chiffre, il vaut mieux un multiple de 15, par exemple 495 ou 510, mais c'est un avis personnel.
--
Cordialement,
Jacques.
Bonjour bahn po,
bahn po a écrit :
John-Pet a exprimé avec précision :
Hello
Dans une picturebox contenant comme picture un carte, j'ai mis une
autre image (par dessus la première) mais très petite representant une
bouée
Je voudrais pouvoir déplacer cette bouée avec la souris
Quelqu'un a t'il une piste pour y arriver
Merci
JP
Option Explicit
Private Type POINTAPI
X As Long
Y As Long
End Type
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI)
As Long
Private Sub Picture2_MouseMove(Button As Integer, Shift As Integer, X As
Single, Y As Single)
Dim p As POINTAPI
If Button = 1 Then
Call GetCursorPos(p)
Picture2.Left = p.X * 15 - Form1.Left - 500
Picture2.Top = p.Y * 15 - Form1.Top - 500
Picture2.Refresh
End If
end sub
Ci-dessus un exemple d'une picture2 qui se déplace quand tu click gauche
dessus. Désolé pour la formule "p.X * 15 - Form1.Left - 500", j'ai pas
trouvé mieux, mais ça marche :)
Le 15, à ma connaissance, est lié aux différentes unités utilisées, le
pixel pour une grande partie (si ce n'est la majorité) des Api's, le
twips par défaut pour VB (y' toujours pas d'échantillon de twips à
Sèvres !!!). Et un Pixel vaut 15 twips( ou Screen.TwipsPerPixel[X-Y]).
Jean-Marc ou François ou Patrice, ou ? savent peut être pourquoi, moi
pas, mais c'est comme ça depuis un moment. Il me semble toutefois qu'il
y avait l'idée, derrière cette unité, d'être indépendant du périphérique
(écran , imprimante, etc...) qui n'ont pas la même résolution physique.
Pour le 500, je dirai que c'est lié au type de fenêtre, par exemple
sizeable ou non, Fixed Dialog ou non, les bordures, et la barre de
titres n'ont pas la même dimension (voir avec GetSystemMetrics)
Mais 500, n'est peut être pas le meilleur chiffre, il vaut mieux un
multiple de 15, par exemple 495 ou 510, mais c'est un avis personnel.
Dans une picturebox contenant comme picture un carte, j'ai mis une autre image (par dessus la première) mais très petite representant une bouée Je voudrais pouvoir déplacer cette bouée avec la souris Quelqu'un a t'il une piste pour y arriver
Merci
JP
Option Explicit
Private Type POINTAPI X As Long Y As Long End Type Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Sub Picture2_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim p As POINTAPI
If Button = 1 Then Call GetCursorPos(p) Picture2.Left = p.X * 15 - Form1.Left - 500 Picture2.Top = p.Y * 15 - Form1.Top - 500 Picture2.Refresh End If
end sub
Ci-dessus un exemple d'une picture2 qui se déplace quand tu click gauche dessus. Désolé pour la formule "p.X * 15 - Form1.Left - 500", j'ai pas trouvé mieux, mais ça marche :)
Le 15, à ma connaissance, est lié aux différentes unités utilisées, le pixel pour une grande partie (si ce n'est la majorité) des Api's, le twips par défaut pour VB (y' toujours pas d'échantillon de twips à Sèvres !!!). Et un Pixel vaut 15 twips( ou Screen.TwipsPerPixel[X-Y]). Jean-Marc ou François ou Patrice, ou ? savent peut être pourquoi, moi pas, mais c'est comme ça depuis un moment. Il me semble toutefois qu'il y avait l'idée, derrière cette unité, d'être indépendant du périphérique (écran , imprimante, etc...) qui n'ont pas la même résolution physique.
Pour le 500, je dirai que c'est lié au type de fenêtre, par exemple sizeable ou non, Fixed Dialog ou non, les bordures, et la barre de titres n'ont pas la même dimension (voir avec GetSystemMetrics)
Mais 500, n'est peut être pas le meilleur chiffre, il vaut mieux un multiple de 15, par exemple 495 ou 510, mais c'est un avis personnel.