Toon posts:

[vb6] Tegengestelde OnMouseOver event?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Euj iedereen!

VB6 Heeft een hele leuke event genaamd MouseMove. Die treedt op, zoals de naam al zegt, als de muis over de desbetreffende control gaat. Maar nu wil ik ook weer detecteren wanneer de muis de control weer verlaat (soort OnMouseOut dus), maar die event bestaat (volgensmij) niet? Is hier een oplossing voor?

Ja, natuurlijk kun je dan van alle andere objecten op je form, en van het form zelf, de MouseMove event gebruiken (als object1 mouseover geeft, dan kan object2 het niet geven, en dan is object2 dus mouseout) maar als iets omslachtig is, is dat het wel. Iemand ideeën?

edit:

hehe foutje

  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 30-08 17:59

Gerco

Professional Newbie

VB6 heeft helemaal geen OnMouseOver event. Wel een MouseMove event, bedoel je dat misschien?

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


Verwijderd

In Javascript is OnMouseOut het omgekeerde van OnMouseOver, maar onMouseOut werkt niet als het object gedisabled is.

Verwijderd

Topicstarter
Op donderdag 18 juli 2002 14:15 schreef Gerco het volgende:
VB6 heeft helemaal geen OnMouseOver event. Wel een MouseMove event, bedoel je dat misschien?
Ja... zoiets jah |:(

Maar ik zoek VB, niet Java(script)!

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 09:31

Crazy D

I think we should take a look.

VB kent dat niet standaard. De meeste IE button, flat buttons, Office style buttons, <insert andere naam voor platte buttons die omhoog komen als je met je muis eroverheen gaat> gebruiken of de SetCapture API, of een timertje.

Exact expert nodig?


  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 30-08 17:59

Gerco

Professional Newbie

VB heeft inderdaad geen MouseOut event of iets wat daarop lijkt. De handigste (maar niet de mooiste) manier om het te doen is denk ik je form gebruiken om de onMouseOut te sturen.

Wil je je objecten helemaal "self-contained" houden, kun je eens spelen met de SetCapture() API.

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


Verwijderd

Topicstarter
Ik heb eens gekeken op http://216.26.168.92/vbapi/ref/s/setcapture.html en daar leggen ze deze api uit, maar ik snap niet precies hoe jullie dan denken dat ik het kan gebruiken? Voor zover ik dit snap, is het een alternatieve MouseMove event. Maar ik heb het ongetwijfeld verkeerd :D

Verwijderd

Op http://www.vbsmart.com/ staan een aantal voorbeeldjes en artikels over die SetCapture en aanverwante methodes. Mischien heb je er iets aan :).

  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 30-08 17:59

Gerco

Professional Newbie

Wanneer de muis over 1 van je objecten (buttons) beweegt, doe je SetCapture(hWnd van button), waardoor de button nog steeds mousemove events zal krijgen, ook als de muis al van de button af is. Je kunt dan controleren of de muis nog op je button staat met de coordinaten en zo niet ReleaseCapture en OnMouseOut() aanroepen.

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


Verwijderd

Topicstarter
Hmmm... Met die link kom ik ook niet echt verder mee... srry

edit:

Ik moet toch eens leren refreshen... Ik ga eens even nadenken over dat stukje...

Verwijderd

Topicstarter
Hmmm... Omslachtig, ik geloof dat ik maar een timert ga gebruiken

  • johnwoo
  • Registratie: Oktober 1999
  • Laatst online: 12:47

johnwoo

3S-GTE

In WinBar gebruik ik enkele zelfgemaakte controls die met SetCapture werken, namelijk een flat-style knopje en een HTML-style link. Ze zitten ook allebei in de tracker source, die je kan downloaden op www.winbar.nl :)

4200Wp ZO + 840Wp ZW + 1680Wp NW | 14xIQ7+ + 1xDS3-L | MTVenusE | HWP1

Pagina: 1