Avatar billede kasseper Nybegynder
13. september 2002 - 14:42 Der er 7 kommentarer og
1 løsning

event på mouseOver og mouseOut på image...?

Hej Hur for jeg lavet en rollover på et image i Visual Basic 6.0 ?
Jeg kan ikke finde mouseOver og mouseOut i event listen på et image eller picture eller hvad det nu hedder....!
Kan man på nogen måde lave sine egne events ?
Avatar billede tubber Juniormester
13. september 2002 - 15:06 #1
'i sættes til at være et tal af typen integer
Dim i As Integer
Du skal oprette en imagebox og en textbox uden at ændre deres navn.
Hvis du har brug for mere hjælp skriv lige igen og så skriv hvad det er du nøjagtigt vil have og jeg skal se om jeg kan hjælpe yderligere :O)

'Når formen loades sættes i = 0
Private Sub Form_Load()
i = 0
End Sub

'Her er et eksempel på en mousemove, som gør i 1 stører hver gang musen
'flyttes.
Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Text1.Text = i
i = i + 1
End Sub

/Tubber
Avatar billede kasseper Nybegynder
13. september 2002 - 15:12 #2
Øhhh ja, det var ikke det jeg skulle bruge.
Det er sådan at når musen befinder sig over mit image, så skal jeg skifte mit picture ud med et andet, og tilsvarende når musen ikke længere befinder sig over image kontrollen.
Og så mit tillægsspørgsmål, kan man selv definere et event ????
Avatar billede kasseper Nybegynder
13. september 2002 - 15:15 #3
Og det skulle helst være uden alt for absurte rutiner såsom at måle musens position på formen og se om den skulle være over et billede, for der kommer til at være en masse billeder der skal 'roll-overs'
Avatar billede tubber Juniormester
13. september 2002 - 15:27 #4
hmmmm der tror jeg ikke jeg lige kan hjælpe har kun en svag ide om det er noget med at sige hvad værdier x,y er på musemarkøren, er det i et område er det det ene billede er den i et andet så er det et andet billede..

sorry...

/Tubber
Avatar billede kasseper Nybegynder
13. september 2002 - 15:30 #5
ok
Avatar billede r_brejnholt Nybegynder
13. september 2002 - 18:45 #6
Det er ret enkelt.
Visual Basic har simpelthen ikke nogen indbygget mouseout() -event før VB.net (Dvs. VB6 har IKKE).

Dette kan omgås ved f.eks. at lave mousemove() for formen - det er lettest hvis du lægger dine billeder som Array's (Ved at sætte index property'en)

private sub form_mousemove()
releasepics
end sub

private sub releasepics()
for i=0 To imgtest.count
imgtest(i).tag="not selected"
next i
End sub

private sub mousemove_imgtest(Index As Integer)
releasepics
imgtest(Index).tag="Selected"
End sub
Avatar billede r_brejnholt Nybegynder
13. september 2002 - 18:49 #7
....og den sidste skal vist laves om til
imgtest_mousemove(Index As Integer) ......;)

Desuden bør du nok lægge en Integer som er tilgængelig i hele formen (ved at definere den øverst) for at kontrollere, at der ikke sker nogen handling, hvis der stadig er tale om, at det er samme billede som er i focus.

Option explicit
Dim MouseFoc As Integer

private sub form_mousemove()
if MouseFoc=-1 Then Exit sub
MouseFoc=-1
releasepics
end sub

private sub releasepics()
Dim i As Integer
for i=0 To imgtest.count
imgtest(i).tag="not selected"
next i
End sub

private sub imgtest_mousemove(Index As Integer)
if MouseFoc=Index Then exit sub
releasepics
imgtest(Index).tag="Selected"
MouseFoc=Index
End sub
Avatar billede kasseper Nybegynder
25. oktober 2002 - 13:18 #8
r_brejnholt : Det virker ikke, mit image for først propertien "Selected", når der bliver klikket på det, og det er ikke meningen.....
Jeg lukker !
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester