AndroidのDelphiTEdit-TEditごとに自動キャップをオフにします

Dec 09 2020

現在、Android TEditは、キーボードを表示すると、最初の文字のキーボードがキャップで表示されます。

最初の文字のキャップに入るキーボードの自動をオフにしたいのですが。注:Androidでこれを実行したくない-設定->アプリ全体に適用されます。TEditごとにやりたいです。

驚いたことに、Delphiでこれを行うための情報が見つかりませんでした。TEditのプロパティも、大文字と小文字の区別がないようです。

TEditのすべての入力を小文字に強制するため、TEdit.CharCase機能を使用できません。

私が欲しいのは、ユーザーが必要に応じ大文字と小文字を入力できることですが、TEditが最初にフォーカスされるときは、キーボードを小文字にする必要があります。

Android仮想キーボードでCapsLockをオンにする

上記のリンクを見ると、達成できるようです。

Delphiでこれを行うにはどうすればよいですか?

Delphi 10.2(まもなく10.4.1に移行)

回答

2 DaveNottage Dec 11 2020 at 03:12

Delphi 10.4.1を使用する場合、次のように行うことができます。

uses
  Androidapi.JNI.GraphicsContentViewText,
  FMX.Platform.Android;

procedure TForm1.Edit2Enter(Sender: TObject);
begin
  PlatformAndroid.TextInputManager.GetEditText.setInputType(TJInputType.JavaClass.TYPE_CLASS_TEXT);
end;

テストアプリに2つの編集コントロールがありました。上記のコードは、2番目の編集用のOnEnterイベントハンドラーです。最初の文字は大文字になりません

10.2ではこれを使用できないと思います