仮想キーボード(ソフトウェアキーボード)の表示を制御するには

グローバル変数VKAutoShowModeを設定すると、仮想キーボード(ソフトウェアキーボード)の表示を制御できます。

モバイルアプリケーションで入力欄にフォーカスが移ったときに仮想キーボードを表示したくないときや、デバッグするためにデスクトップアプリケーションで仮想キーボードを表示したいときなどに使用できます。

VKAutoShowModeにTVKAutoShowMode.Neverを代入すると、入力欄にフォーカスが移ったときに仮想キーボードは表示されません。

VKAutoShowMode := TVKAutoShowMode.Never;

VKAutoShowModeにTVKAutoShowMode.Alwaysを代入すると、入力欄にフォーカスが移ったときに仮想キーボードは表示されます。(コントロールのReadOnlyプロパティがTrueのときは仮想キーボードは表示されません)

VKAutoShowMode := TVKAutoShowMode.Always

VKAutoShowModeの初期値はTVKAutoShowMode.DefinedBySystemです。
このときは仮想キーボードの表示はOSによって決定されます。

参考

コメント

  1. いつも参考にさせていただいています。ありがとうございます。
    さて、Delphi 10.2 tokyo Relese 1で、このコードを実行しましたが、Neverにしても、
    仮想キーボードが表示されてしまいます。
    Delphi10.1ではOKだった気がしたのですが、他に表示させない方法はあるのでしょうか?

  2. 不具合かもしれませんね。
    FireMonkeyの機能を使わず、OSのAPIを直接呼び出せばできるのではないでしょうか。

  3. コメントありがとうございます。
    Android APIの呼び出しですが、Android初心者の私にはまだまだハードルが高そうです。
    残念ですが、今しばらく移行せずに様子を見たいと思います。
    ありがとうございます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください