Joar ... man kann halt nicht alles habel

Zumindestens für Num-Lock gibt es indirekt ein TrayIcon, zusammen mit der für Desktops praktischen Tastaturmaus (leider gibt's ja keinen NummernBlock auf Notebooks).
Statt dem Popup, könnte man eventuell auch
FlashWindow auf das aktive Fenster (anderer Anwendungen) anwenden?
[add]
Wie stellst du die Locks denn um/zurück? [noch' edit] bin auch blöd, da liegt ja der Source rum [/edit]
Bei mir ist mit deinem Programm die Feststelltaste (CapLock) immer aktiviert
und statt des Pollens via Timer würde ich einen globalen Tastaturhook empfehlen, denn wie du gleich sehn kannst, werden bei diesen Tasten auch nette Tastencodes gesendet
Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
Caption := Format('%d %d %x', [GetTickCount, Key, Byte(Shift)]);
end;
OK, das geht so nur innerhalb deiner Anwendung, aber als globalen Tastaturhook umgesetzt, muß man nicht ständig den Status abfragen.
Ein Therapeut entspricht 1024 Gigapeut.