Click here to Skip to main content
11,409,854 members (46,970 online)
Click here to Skip to main content

Onscreen Keyboard

, 21 Mar 2000
Rate this:
Please Sign up or sign in to vote.
An onscreen keyboard for pen computing and touchscreens
  • Download source files - 143 Kb

    Sample Image - OnscreenKeyboard.gif

    I needed a simple onscreen keyboard to interface with a touch / pen based computer that I bought through an online auction. Although Microsoft supplies one with its Pen Extensions 2.0 it only works win Win95 and I wanted to use NT.

    All of the available onscreen keyboards I found were either too expensive, or they were only designed to operate with 3.1 and 9x so (of course) I decided to see if I could make one. Along the way I learned a little about how the keyboard is handled, and the thread keyboard maps.

    Included with this article is a working, but simple, onscreen keyboard. I submitted it mostly as an example of the methods:

    • AttachThreadInput
    • keybd_event
    • VkKeyScan
    • GetKeyState

    This program has one nasty limitation, and that is that it "flashes" since it does not prevent the changing of focus to itself when clicked, and then back to the target window when the keystroke is generated. If someone wants to tackle that one please feel free Wink | ;-)

  • License

    This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

    A list of licenses authors might use can be found here


    About the Author

    Randy More

    United States United States
    No Biography provided

    Comments and Discussions

    Generalajka454 Pinprofessionalajka45426-Jan-14 23:00 
    Questioncomments Pinmembergraceman201217-Aug-12 20:28 
    Questionsendkey is sometimes failing PinmemberMember 815507614-Aug-12 3:35 
    QuestionI need help to port web based G7 onscreen-keypad to Windows Native application. [modified] PinmemberMember 815507611-Aug-12 2:16 
    QuestionHealth Pinmemberkate198321-Feb-12 2:48 
    QuestionGood sample PinmemberBaoSaka27-Jun-11 6:45 
    GeneralMy vote of 5 PinmemberChandru08021-Jun-11 21:01 
    Very Nice article
    Generalcan't run the source code manually Pinmembernoordiana21-Oct-10 5:38 
    GeneralOn Screen Keyboard - Korean PinmemberMember 31486272-Mar-10 9:55 
    Questiononscreen keyboard Pinmembersaranshs24-Oct-09 6:53 
    QuestionChording-like Keyboard like Onscreen Keyboard Pinmembermike spano5-Mar-09 11:33 
    Generaldisabled keyboard Pinmemberphantoms3316-Oct-08 16:42 
    QuestionFor Vb.NET 2005 .. 2.0 Pinmemberferozasi25-Mar-08 5:53 
    GeneralTo stop flashing PinmemberVibes8-May-07 19:04 
    GeneralRe: To stop flashing Pinmembercxcui5-Jun-07 10:28 
    GeneralRe: To stop flashing PinmemberMember 364201630-Jun-09 18:53 
    Questionvirtual keyboard using java PinmemberMember #37203626-Mar-07 7:47 
    AnswerRe: virtual keyboard using java Pinmemberakash214713-Jul-10 3:41 
    QuestionDaniel Pinmemberotaku191-Feb-07 23:56 
    QuestionI have a problem with the address bar Pinmemberarrodenas4-Nov-06 11:35 
    AnswerRe: I have a problem with the address bar Pinmemberstorein20-Dec-06 0:57 
    GeneralRe: I have a problem with the address bar Pinmemberarrodenas2-Jan-07 9:33 
    GeneralFixed the ESC key Pinmembercfo5ter5-Sep-06 13:31 
    GeneralRe: Fixed the ESC key Pinmemberstorein17-Dec-06 15:58 
    QuestionONSCREEN KEYBOARD Pinmemberraeesa4-Sep-06 4:47 
    GeneralRe: ONSCREEN KEYBOARD Pinmemberbrahmma9-May-07 8:55 
    QuestionCan we change initial size? Pinmemberpeterpecker10-Mar-06 6:43 
    QuestionRe: Can we change initial size? Pinmembergidtitan21-Mar-07 11:06 
    Generala better Onscreen Virtual keyboard PinmemberIlanbm1-Mar-06 3:11 
    GeneralRe: a better Onscreen Virtual keyboard - Link PinmemberIlanbm1-Mar-06 3:12 
    GeneralRe: a better Onscreen Virtual keyboard - Link Pinmemberjmelgaard17-Jan-07 2:57 
    GeneralTentative Enhancement Pinmemberdickch20-Dec-05 14:19 
    QuestionRe: Tentative Enhancement PinmemberJYCiou5-Mar-06 15:20 
    QuestionRe: Tentative Enhancement PinmemberHomero De la Garza5-Aug-07 9:37 
    GeneralRe: Tentative Enhancement Pinmembergidtitan21-Mar-07 11:07 
    QuestionJapanese? Pinmembermatsnas6-Dec-05 23:07 
    GeneralTimer Pinsusssimcon8-Jun-05 0:20 
    Generalexecute PinmemberSimon Potzkai30-May-05 0:58 
    GeneralKill keyboard from another app Pinmemberbarnes1022@yahoo.com16-Feb-05 12:10 
    GeneralRe: Kill keyboard from another app PinmemberDirk Moshage21-Feb-05 7:26 
    GeneralRe: Kill keyboard from another app Pinmemberjbarnes102225-Feb-05 7:45 
    GeneralUsing the Windows OSK PinmemberAlex Evans29-Jan-05 19:35 
    GeneralRe: Using the Windows OSK PinmemberEjayBoy1-Aug-06 13:04 
    GeneralRe: Using the Windows OSK PinmemberEjayBoy1-Aug-06 14:10 
    GeneralDon't work on remote desktop logon window Pinmemberyoslee20-Jan-05 22:11 
    GeneralOnscreen Keyboard Internationalization Matter ... PinsussDuranti Loris11-Jan-05 3:04 
    Generalabt OnScreen Keyboard PinmemberTripura.K3-Dec-04 1:06 
    Generalabt OnScreen Keyboard PinsussAnonymous2-Dec-04 23:31 
    GeneralCan't Compile Pinmemberrajwsinder singh2-Dec-04 0:57 
    GeneralRe: Can't Compile PinmemberEP70L-PGKDSG7-Dec-04 2:47 

    General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

    Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

    | Advertise | Privacy | Terms of Use | Mobile
    Web03 | 2.8.150414.5 | Last Updated 22 Mar 2000
    Article Copyright 2000 by Randy More
    Everything else Copyright © CodeProject, 1999-2015
    Layout: fixed | fluid