Les 4 De Muis (deel 1)

18
Les 4 De Muis (deel 1) Programmeren met Visual Basic Karl Moens

description

Les 4 De Muis (deel 1). Programmeren met Visual Basic Karl Moens. Overzicht. Oplossing van de vorige oefeningen Geschiedenis Aansturen van de muis Oefening. Oplossing van de oefeningen. Zie programma Les3F. - PowerPoint PPT Presentation

Transcript of Les 4 De Muis (deel 1)

Page 1: Les 4 De Muis (deel 1)

Les 4De Muis(deel 1)

Programmerenmet

Visual Basic

Karl Moens

Page 2: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Overzicht

• Oplossing van de vorige oefeningen

• Geschiedenis• Aansturen van de muis• Oefening

Page 3: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Oplossing van de oefeningenZie programma Les3F

Page 4: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

De Muis

De Muis werd uitgevonden door Douglas Engelbart in de jaren 60 en voor het eerst gedemonstreerd in 1968 in Californië (zie http://sloan.stanford.edu/MouseSite/Archive.html en

http://www-2.cs.cmu.edu

/~amulet/ papers/uihistory.tr.html ) en was bedoeld als vervanging van de reeds sedert 1954 in gebruik zijnde lightpen.

Page 5: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Aansturen van de muis

De muis wordt beheerd door het Windows-systeem.

Visual Basic heeft een aantal mogelijkheden om deze systeem-functies te gebruiken in een programma

Page 6: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Aansturen van de muis

De belangrijkste parameters van de muis kunnen worden uitgelezen:

• positie (x en y)• beweging van de muis (van en

naar objecten)• toestand van de muisknoppen• indrukken en loslaten van de

muisknoppen(zie programma Les4A.vbp)

Page 7: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Aansturen van de muis

Algemene regel:Het object waarboven de muispointer

zich bevindt zal de "mouse-events" beheren.

Indien er geen specifiek object onder de muis is, zal het formulier de "mouse-events" afhandelen.

Page 8: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Aansturen van de muis

De positie van de muis:• De positie van de muis boven

objecten of boven het formulier wordt automatisch door VB beheerd: het juiste object/formulier krijgt de gebeurtenissen te verwerken.

• De positie van de muis uitgedrukt in coordinaten (X en Y) worden continu bijgehouden in de MouseMove-event.

Page 9: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Aansturen van de muis

Private Sub Form_MouseMove(button As Integer, shift As Integer, x As Single, y As Single)

x is de x-coordinaat (horizontaal)y is de y-coordinaat (verticaal)De positie (0,0) is de linkerbovenhoek van

het formulier (zonder de titelbalk) of objectDe standaard gebruikte maateenheid is de twip(1 inch = 1440 twips)

Page 10: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Aansturen van de muis

Andere maateenheden:• cm, mm en inch• points (1 inch = 72 points)

• pixels (afhankelijk van de computer)

• character (een rechthoek van 120 twips breed en 240 twips hoog)

Page 11: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Aansturen van de muis

Welke eenheden worden gebruikt hangt af van de ScaleMode-eigenschap van het formulier

Twips 1

Point 2

Pixel 3

Character 4

Inch 5

mm 6

cm 7

Page 12: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Aansturen van de muis

De MouseMove-event wordt uitgelokt telkens wanneer de X en/of Y coordinaat van de muis wijzigt.

Op dat moment kan ook de toestand van de muisknoppen worden gecontroleerd via de waarde Button:

Links 1

Rechts

2

Midden

4

Indien meerdere knoppen zijn ingedrukt

worden de waarden opgeteld.

Page 13: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Aansturen van de muis

Tegelijk worden ook de Shift-toetsen uitgelezen in de Shift-waarde:

Ook hier zijn combinaties mogelijk door de waarden op te tellen!

Shift 1

Ctrl 2

Alt 4

Page 14: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Aansturen van de muis

Ook het indrukken of loslaten van een muisknop is een gebeurtenis:

Private Sub Form_MouseDown(button As Integer, shift As Integer, x As Single, y As Single)

Private Sub Form_MouseUp(button As Integer, shift As Integer, x As Single, y As Single)

Page 15: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Aansturen van de muis

Opgelet!De waarde van button is steeds maar

de waarde van één muisknop (geen combinaties mogelijk zoals bij MouseMove).

Deze events registreren iedere beweging van iedere muisknop apart!

vb: een dubbelklik met de linkermuisknop is dus MouseDown; MouseUp; MouseDown; MouseUp met telkens button = 1

Page 16: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Aansturen van de muis

Sommige objecten kennen ook een Click of DblClick-gebeurtenis. Deze gebeurtenissen kunnen echter geen onderscheid maken tussen linker/midden/rechter-muisknop.

Indien er voor een object zowel een Click als een DblClick-event is gedefiniëerd, wordt de DBLClick nooit uitgevoerd omdat de Click-event voorrang krijgt.

Page 17: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Aansturen van de muis

De volgorde van de events is verschillend voor verschillende types objecten:

• Form, Label, PictureBox:MouseDown, MouseUp, Click

• CommandButtonMouseDown, Click, MouseUp

Page 18: Les 4 De Muis (deel 1)

Program

meren m

et Visula B

asic – Les 4

Oefening

Maak een eenvoudig tekenprogramma. Het tekenen gebeurt uiteraard met de muis!

Voorzie de mogelijkheid om in verschillende kleuren te werken en eventueel met verschillende "borstels".