ノートパソコン(NEC-LavieL)のFnキーは下記のFormKeyDownイベントで拾えません。
VK_で始まるキーコードにもないようです。
Fn+↑キーでページアップ機能を組みたいのですが、Fnキーを拾うにはどうすればいいのですか?
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
showmessage(inttostr(key));
end;
最近ではパソコンの小型化が進み、キーボードも小さくなってきています。
Fnキーはそういう小さいキーボードに配置できない、本来あるべきキーをエミュレートするためのキーです。
例えばPgUp,PgDn,Home,Endなどは本来のキーボードでは専用キーのがあるのですが、小さいキーボードではFn+↑,↓,←,→など、Fnキーとの2キー押しを使うことによってキーを配置するスペースを減らしています。
そのなかでFn+↑は主に〔Page Up〕キーの代替として使われているものなので
VK_PRIORで取得できると思います。また、Fn+↓については、〔Page Down〕キー(VK_NEXT)です。
Fnはキーを押すためのキーですので、OS等には伝わりません。デスクトップPC等では(多分)ほとんど無いでしょう。
長年(?)の疑問が解決しました。
ありがとうございました。
ツイート | ![]() |