BBS: Inland Empire Archive Date: 01-31-93 (14:22) Number: 373 From: ROB MCKEE Refer#: NONE To: FRED PREUETT Recvd: NO Subj: INKEY$ Conf: (2) Quik_Bas
Hello Fred! FP> Thanks, I had forgotten to add the null (chr$(0)) before FP> checking. I use: DO i$ = INKEY$ DoUpdateScreenDuringIdleLoop LOOP WHILE i$ = "" SELECT CASE CVI(i$+CHR$(0)) CASE 0 to 31: KeyName$= "ASCII Term Codes -" + i$ CASE 32 to 127: KeyName$= "ASCII -" + i$ CASE 128 to 255: KeyName$= "HighASCII -" + i$ CASE 29696: KeyName$= "Cntrl-Right" CASE 20736: KeyName$= "Shift-PgDn" CASE 20224: KeyName$= "End" CASE 15104: KeyName$= "F1" CASE -31232: KeyName$= "F12" CASE 26624: KeyName$= "Alt-F1" CASE 24064: KeyName$= "Cntrl-F1" CASE 7680: KeyName$= "Alt-A" CASE 46: KeyName$= "." CASE 44: KeyName$= "," CASE 4: KeyName$= "Cntrl-D" End Select Here's The Program I use to generate the KeyCodes: --------------8<--------------- DECLARE FUNCTION TheKey$ () OPEN "O", 1, "JNK" ' Add or Subtract from the DATA Statement to add or Subract Keys ' And YES some keys Don't WORK with this Program! ' I then MERGE the JNK. file into my Program DATA Alt-Up,Alt-Down,Alt-Right,Alt-Left,Alt-Home,Alt-End DATA Cntrl-End,Cntrl-Insert,Cntrl-Delete,Cntrl-PgUp,Cntrl-PgDn DATA Up,Down,Right,Left,Home DATA F1,F2,F3,F4,F5,F6,F7,F8,F9,F10,F11,F12 DATA Alt-F1,Alt-F2,Alt-F3,Alt-F4,Alt-F5,Alt-F6,Alt-F7,Alt- F8 DATA Alt-F9,Alt-F10,Alt-F11,Alt-F12 DATA Cntrl-F7,Cntrl-F8,Cntrl-F9,Cntrl-F10,Cntrl-F11,Cntrl- F12 DATA Shift-F1,Shift-F2,Shift-F3,Shift-F4,Shift- F5,Shift-F6 DATA Alt-A,Alt-b,".",",","Cntrl-D" DATA llll PRINT #1, CHR$(9) + "DO" PRINT #1, STRING$(2, 9) + " i$ = INKEY$" PRINT #1, STRING$(2, 9) + " DoUpdateScreenDuringIdleLoop" PRINT #1, CHR$(9) + "LOOP WHILE i$ = " + STRING$(2, 34) PRINT #1, PRINT #1, CHR$(9) + "SELECT CASE CVI(i$+CHR$(0))" DO READ F$ IF F$ = "llll" THEN EXIT DO PRINT "Press "; F$; " :" g = CVI(TheKey$ + CHR$(0)) P$ = STRING$(2, 9) + "CASE " + STR$(g) + ":" P$ = P$+ "KeyName$= " + CHR$(34) + F$ + CHR$(34) PRINT P$ PRINT #1, P$ LOOP FUNCTION TheKey$ i$ = "" DO WHILE i$ = "" i$ = INKEY$ LOOP TheKey$ = i$ END FUNCTION --------------8<--------------- Catcha Later , I'll see you on the flip side - Rob Vote Zack_Jones,Quik_Bas Moderator --- timEd/B6 * Origin: Flyer_Proof_Computer_Svs,V32B,V42B,XA (1:125/1212.13)
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