Toon posts:

[VB] Drag en Drop

Pagina: 1
Acties:

Verwijderd

Topicstarter
In mijn VB6 programma heb ik dmv een DragAcceptFiles API call bij het laden van mijn hoofd Form er al voor gezorgd dat ik objecten kan slepen op dit form.
Ik ben er inmiddels ook achter dat er een WM_DROPFILES window message optreed op het moment dat ik iets drag en drop op mijn form. Mijn vraag is hoe ik deze message kan afvangen binnen Vb. Het zou kunnen middels de API call PeekMessage maar dan moet ik dit commando binnen een lus continu blijven aanroepen om te controleren of er een WM_DROPFILES message is opgetreden en dat wil ik niet. Het mooiste zou zijn als het op een event achtige manier zou kunnen (de standaard DragDrop events werken niet in dit geval :( ) Iemand een id?

Verwijderd

Je kan hiervoor standaard componentjes gebruiken. Die maken het iets makkelijker want de pure VB implementatie is nogal ranzig :'(. Op http://www.vbsmart.com/ staat een componentje hiervoor. Op http://www.vbaccelerator.com/codelib/ssubtmr/ssubtmr.htm staat een betere versie (zeg maar de standaard die volgens mij iedereen hiervoor gebruikt)

  • johnwoo
  • Registratie: Oktober 1999
  • Laatst online: 14:48

johnwoo

3S-GTE

Je kan een eigen window callback procedure instellen met SetWindowLong. WM_DROPFILES messages handel je dan zelf af, alle andere messages stuur je naar de originele window procedure met CallWindowProc.
Ik zie overigens niet in wat hier zo ranzig aan is. In C(++) zou het op exact dezelfde manier gaan. Het enige nadeel is wel, dat als je programma een error geeft terwijl je in de IDE runt, niet alleen je programma maar ook de IDE ermee nokt... Kan lastig zijn tijdens het developen, maar voor je uiteindelijke executable maakt het niets uit.

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