Delphi / C++Builder で Android の「戻る」ボタンの動作を無効にする
5374 ワード
Android のスマホでアプリの操作中、「戻る」ボタンの動作が作動してしまったことありませんか?
画面の下の方にある△のアレですよ!うっかり触れてアプリ終了とかになってしまうアレ!
ヘルプにもありますが、フォーム (TForm) のキーイベント (OnKeyDown または OnKeyUp) で戻るボタンの値 (vkHardwareBack = 137) を検知して、押されたキーを無効 (Key := 0 / Key = 0;)にします。
#個人的には OnKeyDown の方が腑に落ちる
サンプルコード
Delphi
// OnKeyDownイベントで検知する場合
procedure TForm1.FormKeyDown(Sender: TObject; var Key:Word; var KeyChar: Char;
Shift: TShiftState);
begin
if Key = vkHardwareBack then Key := 0;
end;
または
// OnKeyUpイベントで検知する場合
procedure TForm1.FormKeyUp(Sender: TObject; var Key:Word; var KeyChar: Char;
Shift: TShiftState);
begin
if Key = vkHardwareBack then Key := 0;
end;
C++Builder
// OnKeyDown イベントで検知する場合
void __fastcall TForm1::FormKeyDown(TObject *Sender, Word &Key, System::WideChar &KeyChar,
TShiftState Shift)
{
if (Key = vkHardwareBack) { Key = 0; }
}
または
// OnKeyUP イベントで検知する場合
void __fastcall TForm1::FormKeyUp(TObject *Sender, Word &Key, System::WideChar &KeyChar,
TShiftState Shift)
{
if (Key = vkHardwareBack) { Key = 0; }
}
Author And Source
この問題について(Delphi / C++Builder で Android の「戻る」ボタンの動作を無効にする), 我々は、より多くの情報をここで見つけました https://qiita.com/CYonezawa/items/4da6243742e61fa3276e著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .