File: mouse3.pp

package info (click to toggle)
fpc 2.6.4%2Bdfsg-4
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 178,760 kB
  • ctags: 83,946
  • sloc: pascal: 2,000,374; xml: 138,807; ansic: 9,617; asm: 7,843; yacc: 3,747; php: 3,271; sh: 2,626; makefile: 2,610; lex: 2,537; sql: 267; cpp: 145; sed: 132; perl: 126; csh: 34; tcl: 7
file content (47 lines) | stat: -rw-r--r-- 1,246 bytes parent folder | download | duplicates (16)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
{example for GetMouseState, IsLPressed, IsRPressed and IsMPressed}

Uses MsMouse, Crt;

Var X, Y, State: Longint;

Begin
  If MouseFound Then
    Begin
      ClrScr;
      ShowMouse;
      GotoXY(5,24);
      Write('Left button:');
      GotoXY(30,24);
      Write('Right button:');
      GotoXY(55,24);
      Write('Middle button:');
      While KeyPressed do Readkey; {clear keyboard buffer}
      Repeat
         GetMouseState(x, y, State);
         GotoXY(20, 22);
         Write('X: ',x:5,' (column: ',(x div 8):2,')  Y: ',y:5, ' (row: ',(y div 8):2,')');
         GotoXY(18, 24); {left button}
         If (State and LButton) = LButton Then
{or: "If LPressed Then". If you use this function, no call to GetMouseState
 is necessary}
           Write('Down')
         Else
           Write('Up  ');
         GotoXY(44, 24); {right button}
         If (State and RButton) = RButton Then
{or: "If RPressed Then"}
           Write('Down')
         Else
           Write('Up  ');
         GotoXY(70, 24); {middle button}
         If (State and MButton) = MButton Then
{or: "If MPressed Then"}
           Write('Down')
         Else
           Write('Up  ')
      Until KeyPressed;
      HideMouse;
      While KeyPressed Do Readkey
    End
End.