Delphi XE8、Firemonkeyマルチデバイスフォームを使用しています。OSXでEnterキーを押したときのFiremonkeyサウンド
パスワード入力用に設定された標準のTEditでは、ユーザーがEnterキー(OSX)を押したときにデフォルトの警告音を止められません。Windowsはうまく動作します。
私はKeyDownイベントとkeyUpイベントイベントに次のように設定しようとしました:
procedure TfrmMain.txtPasswordPromptKeyUp(Sender: TObject; var Key: Word; var KeyChar: Char; Shift: TShiftState);
begin
if (Key = vkReturn) and (btnPasswordPromptGo.Tag = 0) then begin
Key := vkNone;
KeyChar := #0;
btnPasswordPromptGoClick(sender);
end;
end;
procedure TfrmMain.txtPasswordPromptKeyDown(Sender: TObject; var Key: Word; var KeyChar: Char; Shift: TShiftState);
begin
if (Key = vkReturn) and (btnPasswordPromptGo.Tag = 0) then begin
Key := vkNone;
KeyChar := #0;
end;
end;
音はまだOSX上で果たしています。誰もこれをやめる方法を知っていますか?
VCLアプリケーションでは、そのコードを記述する必要はありません。 OKボタンの 'Default'プロパティをtrueに設定するだけです。 FMXはそのように機能しませんか? –
うわー、キャンセルとデフォルトのプロパティを使用していても、テキストボックスからのデフォルトのビープ音を防ぐことはできませんでした。ありがとう、それは動作します。私が見落としたのは、Defaultプロパティを持たないTCornerButtonを使用していたためですが、TButtonだけに変更できました。 – MikeD