BBS: Inland Empire Archive Date: 04-09-92 (14:47) Number: 49 From: MICHAEL MALLEY Refer#: NONE To: JOHN DEPKO Recvd: NO Subj: Mouse routines Conf: (2) Quik_Bas
JD> Unfortunately, if you hold the mouse button down for more than a few JD>milliseconds, the button is "read" over and over again, causing the CASE JD>to be SELECTed more than once, even though there was only one JD>button-press. Hello John! This is similar to the problem of using the <ALT> key to access menus. There are two things that you can do, the most inefficient is first. 1. When the button is pressed, set a flag (i.e. Mouse1% = -1), and continuously poll to see when the mouse button is no longer pressed. Then act on the coordinates. 2. When the button is pressed, call a routine that returns when the button is released, and act on that information. Interrupt follows: INT 33H Function 6H Calling registers AX = 6H BX = Button 0 - Left 1 - Right 2 - Center if present or Left & Right Returning registers AX = Button status (see chart below) BX = Count of button releases since last call CX = Horizontal postion when released DX = Vertical position when released Mouse button status 7 6 5 4 3 2 1 - Bits 0 - Left button up 1 - Left button down 0 - Right button up 1 - Right button down 0 - Center button up (both) 1 - Center button down (both) x x x x - Not used I hope this is what you had in mind. Until later! - Michael * SLMR 2.1a * Coffee is my only *real* friend. --- Maximus 2.01wb * Origin: UltraTech - Nashville, TN (615) 356-0453 {HST} (1:116/30)
Books at Amazon:
Back to BASIC: The History, Corruption, and Future of the Language
Hackers: Heroes of the Computer Revolution (including Tiny BASIC)
Go to: The Story of the Math Majors, Bridge Players, Engineers, Chess Wizards, Scientists and Iconoclasts who were the Hero Programmers of the Software Revolution
The Advent of the Algorithm: The Idea that Rules the World
Moths in the Machine: The Power and Perils of Programming
Mastering Visual Basic .NET