procedure TForm1.FormCreate(Sender: TObject);
begin
//获取
  CheckBox1.Checked := not ByteBool(GetKeyState(VK_NUMLOCK) and 1);
end;procedure TForm1.CheckBox1Click(Sender: TObject);
var
  vKeyBoardState: TKeyboardState;
  vNumState: Boolean;
begin
//设置
  vNumState := not CheckBox1.Checked;
  GetKeyBoardState(vKeyBoardState);
  if vNumState then
    vKeyBoardState[VK_NUMLOCK] := (vKeyBoardState[VK_NUMLOCK] and not 1)
  else vKeyBoardState[VK_NUMLOCK] := (vKeyBoardState[VK_NUMLOCK] or 1);
  SetKeyBoardState(vKeyBoardState);
end;