Toon posts:

[vb.net] hotspots in plattegrond

Pagina: 1
Acties:

Verwijderd

Topicstarter
ik heb een image van de plattegrond van onze winkel. deze winkel is opgebouwd uit een 30 tal bakken. nu wil ik, dat je een bak aan kunt klikken en dat je dan de inhoud van die bak kunt bekijken. nu is dat laatste niet zo'n probleem om voor elkaar te krijgen. maar het eerste wel. weet iemand hoe je het voor elkaar krijgt dat je op zo'n bak kunt klikken en dat hij dan die gegevens daarvan toont.

  • Infinitive
  • Registratie: Maart 2001
  • Laatst online: 25-09-2023
Misschien is dit een idee:
Als je nu eens een onzichtbaar plaatje over je oorsponkelijke plaatje heen legt, waarbij je op de plaats van de bakken een uniek kleurtje gebruikt. De overige ruimte krijgt ook een uniek kleurtje. Dit kan je zelf met behulp van een tekenprogramma maken.

Wanneer vervolgens de gebruiker op een bepaalde lokatie klikt, gebruik je dat coördinaat om te kijken welke kleur daarvoor aanwezig is in je onzichtbare plaatje. Met behulp van die kleur weet je welke bak je wilt hebben.

putStr $ map (x -> chr $ round $ 21/2 * x^3 - 92 * x^2 + 503/2 * x - 105) [1..4]


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Of je gooit er wat transparante labels (control array) over heen (kun je evt. ook nog mooi je bakken een naampje geven, anders laat je het label leeg) en je vangt het onClick event van je label (en de index geeft dan aan welke bak)...

Toch?

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

Je kan gebruik maken van RectAngles en dan recTangle.Contions('mousePoint');

Dus je cooridinaten van een click (mouse point) bekijken en kijken of deze dus op een specifiek rectangle zijn geclicked ja of nee.

voorbeeldje:
C#:
1
2
3
4
5
6
7
8
9
private void IetVanJeControlOfFormOfzo_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
    Rectangle rec1 = new Rectangle(3, 3, 14, 14);
    Point mousePoint = new Point(e.X, e.Y);
    if(rec1.Contains(mousePoint))
    {
        // Er is op RectAngle 'rec1' geclicked      
    }
}


@ RobIII
In VB.NET het je dat niet meer. Kun je gebruik maken van de 'sender'.

[ Voor 64% gewijzigd door Verwijderd op 07-03-2004 20:23 ]


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
offtopic:
Whoops... het ".Net" gedeelte niet gezien :+

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij