Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

"planche contact" clickable : comment faire ?

11 réponses
Avatar
free.fr
bonjour,

j'ai fait une mosaique de photos à partir de picturebox dans lesquelles je
charge mes images , genre planche contact.

je voudrais maintenant pouvoir cliquer sur une photo pour l'agrandir.

j'ai essayé "mousedown" mais il n'est pas pris en compe.

precision : mes images/photos recouvrent tout l'écran.

Vous avez surement une solution.

Merci de votre aide.

10 réponses

1 2
Avatar
Jean-marc
free.fr wrote:
bonjour,

j'ai fait une mosaique de photos à partir de picturebox dans
lesquelles je charge mes images , genre planche contact.

je voudrais maintenant pouvoir cliquer sur une photo pour l'agrandir.

j'ai essayé "mousedown" mais il n'est pas pris en compe.

precision : mes images/photos recouvrent tout l'écran.

Vous avez surement une solution.

Merci de votre aide.



Hello,

tu dois avoir un autre problème car l'évènement MouseDown est
bien pris en compte:

Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As
Single, Y As Single)

End Sub

Il faut chercher d'où pourrait venir ce comportement anormal.

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
Avatar
Driss HANIB
Free.fr

Peut être peux tu publier le contenu de ta procedure pour qu'on puisse
comprendre ..

Driss

"Jean-marc" a écrit dans le message de news:
483c6f20$0$2957$
free.fr wrote:
bonjour,

j'ai fait une mosaique de photos à partir de picturebox dans
lesquelles je charge mes images , genre planche contact.

je voudrais maintenant pouvoir cliquer sur une photo pour l'agrandir.

j'ai essayé "mousedown" mais il n'est pas pris en compe.

precision : mes images/photos recouvrent tout l'écran.

Vous avez surement une solution.

Merci de votre aide.



Hello,

tu dois avoir un autre problème car l'évènement MouseDown est
bien pris en compte:

Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As
Single, Y As Single)

End Sub

Il faut chercher d'où pourrait venir ce comportement anormal.

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;






Avatar
free.fr
En fait je recouvre literalement ma Form avec des picturebox dans lesquelles
sont loadées des .bmp.

les picturebox sont en autosize donc les .bmp occupent toute la place
disponible.

elles sont aussi chargées dynamiquement (pas dans le design sauf la
'matrice' avec index renseigné à zero)

ceci ecran par ecran (on peut paginer).

le mousedown ne marche que si je laisse de l'espace entre les picturebox ,
donc ou il touche la Form.

N"est ce pas un pb de 'transparence' ?

si ca ne suffit pas je mettrai mon code mais il faut que je le nettoie un
peu.

merci
Avatar
free.fr
Dim page, h, l, offset As Integer
Private Sub Form_KeyPress(KeyAscii As Integer)
For i = 1 To h * l
Unload Picture1(i)
Next i
If Chr$(KeyAscii) = "p" Then page = page + 1
If Chr$(KeyAscii) = "m" Then page = page - 1
offset = (page - 1) * h * l
Call AFFICHAGE
End Sub

Private Sub Form_Load()
KeyPreview = True
page = 1
Form1.Height = Screen.Height
Form1.Width = Screen.Width
h = Form1.Height Picture1(0).Height
l = Form1.Width Picture1(0).Width
Call AFFICHAGE
End Sub

Sub AFFICHAGE()
For i = 1 To h * l
Load Picture1(i)

X = ((i - 1) Mod l) + 1
Y = ((i - 1) l) + 1

Picture1(i).Left = Picture1(1).Width * (X - 1) '+ Picture1(0).Left
Picture1(i).Top = Picture1(1).Height * (Y - 1) '+ Picture1(0).Top
'Picture1(i).Picture = LoadPicture("C:charles(hp)avi to bmp" & (offset
+ i) & ".bmp")
Picture1(i).Visible = True
Picture1(i).AutoSize = True
Picture1(i).ForeColor = RGB(255, 255, 255)
Picture1(i).Print offset + i
Form1.Refresh
Next i

End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single,
Y As Single)
Form1.Print X, Y
End Sub
Avatar
Jacques93
free.fr a écrit :
En fait je recouvre literalement ma Form avec des picturebox dans
lesquelles sont loadées des .bmp.

les picturebox sont en autosize donc les .bmp occupent toute la place
disponible.

elles sont aussi chargées dynamiquement (pas dans le design sauf la
'matrice' avec index renseigné à zero)

ceci ecran par ecran (on peut paginer).

le mousedown ne marche que si je laisse de l'espace entre les picturebox
, donc ou il touche la Form.

N"est ce pas un pb de 'transparence' ?

si ca ne suffit pas je mettrai mon code mais il faut que je le nettoie
un peu.

merci





Peut être une image écran de ta feuille (en cours d'exécution) pourrait
donner une idée ?

--

Cordialement,

Jacques.
Avatar
Jean-marc
>free.fr wrote:




Hello,

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As
Single, Y As Single)
Form1.Print X, Y
End Sub



Tu ne peux pas faire un Form_mouseDown, si c'est ce que tu espères faire.

Tu peux faire des mouseDown sur les picture, mais évidemment pas
sur Form, puisque la forme est recouverte!

Note: avec un picture qui recouvre la forme, il n'y a aucun moyen
(ni API ni transparence ni autre) de pouvoir déclencher un évènement
sur la forme, c'est simplement impossible (et heureusement sinon
bonjour la panique!).

Il faut donc mettre ton code évènementiel sur les picture_MouseDown
ce qui est tout simple si tu as pris soin de faire des
pictureBox indicés.

Cordialement,

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
Avatar
free.fr
">
Il faut donc mettre ton code évènementiel sur les picture_MouseDown
ce qui est tout simple si tu as pris soin de faire des
pictureBox indicés.

Cordialement,



bonsoir Jean-Marc ,

là je sèche !

je ne peux quand meme pas faire

sub picture1(0)_mousedown (.....)

Il y a une astuce , non ?
Avatar
Patrick JONIEC
Bonsoir

tu aura des SUB Picture1_MouseDown(index as integer, ... )

avec index qui contiendra le No de la picturebox

"free.fr" a écrit dans le message de
news:483dbe3c$0$13002$

">
Il faut donc mettre ton code évènementiel sur les picture_MouseDown
ce qui est tout simple si tu as pris soin de faire des
pictureBox indicés.

Cordialement,



bonsoir Jean-Marc ,

là je sèche !

je ne peux quand meme pas faire

sub picture1(0)_mousedown (.....)

Il y a une astuce , non ?


Avatar
free.fr
elle etait là l'astuce.

Merci Patrick.
Avatar
Driss HANIB
et jean-Marc ;o)

"free.fr" a écrit dans le message de news:
483dc63e$0$5030$

elle etait là l'astuce.

Merci Patrick.


1 2