Checking for Numlock and Capslock and displaying on Statusbar (Views: 30)
Problem/Question/Abstract: How do I check for a Numlock enabled and Capslock enable? Answer: Here are two procedures that you add to the main form of your application: procedure TfrmMain.CheckCapslock; begin if Odd(Getkeystate(VK_CAPITAL)) then Statusline.Panels[1].text := 'CAPS' else Statusline.Panels[1].text := ''; end; procedure TfrmMain.CheckNumlock; begin if Odd(Getkeystate(VK_NUMLOCK)) then Statusline.Panels[2].text := 'NUM' else Statusline.Panels[2].text := ''; end; Add a application component to your project and simply call both these procedures in the Application.onmessage event i.e.: procedure TfrmMain.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean); begin CheckCapslock; CheckNumlock; end; |