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

グローバル変数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初心者の私にはまだまだハードルが高そうです。
    残念ですが、今しばらく移行せずに様子を見たいと思います。
    ありがとうございます。

コメントを残す

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.