Avatar billede hestetoften Nybegynder
22. april 2004 - 15:10 Der er 3 kommentarer og
1 løsning

læs Caps-Lock

Jeg har fundet ud af at denne læser Caps-Lock status

if (KeyState[vk_capital] = 0) then
      StatusBar1.Panels[1].Text := 'CAPS LOCK';

men i hvilken event på formen kan jeg bruge denne ??
Avatar billede pellelil Nybegynder
22. april 2004 - 15:14 #1
Jeg vil gætte på "OnKeyPress" og så er der noget med at du på formen skal "Enable" en "Preview-ting" (husker ikke lige dens navn), men den gør at formen er i stand til "at se" tasten blive trykket.
Avatar billede borrisholt Novice
22. april 2004 - 15:14 #2
1)
  Sæt KeyPreview til True

Og skriv dit kode i onKeyDown
Avatar billede hestetoften Nybegynder
22. april 2004 - 15:21 #3
Den fanger ikke tastetrykket:??

bruger denne.

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
  KeyState: TKeyboardState;
begin
if (KeyState[vk_capital] = 0) then
      StatusBar1.Panels[1].Text := 'CAPS LOCK';
end;

og KeyPreview er sat til True
Avatar billede hestetoften Nybegynder
22. april 2004 - 21:24 #4
jeg fandt selv ud af det.

Her er løsningen:

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
  KeyState: TKeyboardState;
begin
  GetKeyboardState(KeyState);
  if (KeyState[vk_capital] = 0) OR (KeyState[vk_capital] = 128) then
    StatusBar1.Panels[2].text := '' else
    StatusBar1.Panels[2].text := 'CAPS LOCK';

  if  (KeyState[vk_insert] = 0) or (KeyState[vk_insert] = 128) then
    StatusBar1.Panels[1].text := 'Overskriv' else
    StatusBar1.Panels[1].text := 'Indsæt';
end;
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester