問題タブ [ime]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - ibus 設定の実際のキーコードを取得する
エンジンのオン/オフをトリガーするキーを知るために、ibusキー構成を読み取ることができます(プロパティ「一般/ホットキー」および「トリガー」からアクセスできます)。これで問題ありませんが、IME のオン/オフを切り替える文字列 (gchar*) のリストを返します (例: ["SHIFT+CTRL+F9", "SHIFT+UNDERSCORE",...])。
これらの文字列に対応するキーコードを取得するにはどうすればよいですか?
android - 電話にインストールされているすべての入力方法 (およびその名前) のリストを取得するにはどうすればよいですか?
電話に現在インストールされているすべての入力方法のリストを表示しようとしています。これを行うことで、InputMethodInfo オブジェクトのリストを取得しています。
これは機能しますが、InputMethodInfo オブジェクトにはフレンドリ名がどこにもありません。たとえば、「Swype」の代わりに「com.swype.android.inputmethod.SwypeInputMethod」が表示されます
これは、リストをユーザーに表示するためのあまり友好的な方法ではありません。また、これらのパッケージ名は厳密なパターンに従っていないため、クラス名からキーボード名を確実に解析する方法がありません。
私は本当に凝って、InputMethodInfo の対応する ServiceInfo オブジェクトを取得して、その Label Resource 整数を解決しようとさえしましたが、これが実行されるたびに NameNotFoundExceptions を取得するだけです。
これを達成する方法を知っている人はいますか?どのように行う必要があるかは気にしません。電話機の [言語とキーボード] メニューに表示される入力方法のリストを作成し、ユーザーの選択を保存できるようにする必要があるだけです。InputMethodManager を使用して標準の入力方法選択メニューを起動し、メニューが閉じた後に現在どの IME が選択されているかを見て、ユーザーが選択したものを確認できるのではないかと思いましたが、私が知る限り、それを確認する方法はありません。システムで現在選択されている IME。
c# - 仮想キーに対応する文字を決定します (アジア IME を使用)。。ネット
仮想キーまたは仮想キーの組み合わせ (System.Windows.Input.Key またはSystem.Windows.Input.KeyGesture ) を指定して文字 (文字または文字列) を取得するにはどうすればよいですか? アジアの IME を使用しており、ユーザーがキーボードでそのキーを押した場合にテキスト ボックスに表示されるアジア文字または部分文字を特定したいと考えています。
P/Invoking ToUnicodeEx を試してみましたが、アジア言語ではうまくいかないようです。TextCompositionManager を使用してテキスト作成イベントのシミュレーションも試しましたが、作成するテキストがわかっている場合を除き、機能しないようです。
この関数は、最終的に WPF アプリケーションで使用する必要があります。
android - Android アプリケーションの IME が、編集する必要がある EditText との関連付けを解除するのはなぜですか?
私が書いている Android アプリケーションがあります。各アイテムにこのレイアウトを使用してデータをロードするようにすべて設定された ListActivity があります。
私のデータ アダプターは問題なくバインドされ、リストから項目が選択されたときにこのメソッドが呼び出されるように設定しました。
これには、EditText と Button (私のレイアウトでは hidden_box と hidden_box_submit) を表示する効果があります。それはまさに私が欲しかったものです。
ただし、ユーザーが新しく表示された EditText (hidden_box) をタップすると問題が発生します。IME がポップアップし、hidden_box はすぐにフォーカスを失います。したがって、IME で入力された内容は EditText には表示されません。代わりに、入力したものがキーボードの上に灰色の文字で表示され、IME が閉じられたときに画面の下部に残るという、この奇妙なことを行っています。IME が一時的な非表示ボックスに入力しているようです。
IME が表示された後にユーザーが EditText をタップすると、アプリケーションは正常に動作します。IME に入力されたものはすべて EditText に表示され、IME を閉じてもそのまま残ります。
IMEがポップアップすると(ユーザーがEditTextをタップするとすぐに表示されます)、アプリケーションとの関連付けが完全に解除され、IMEに指示しない限り、IME la-la landで処理されます。キーボードを入力して閉じる前に、EditText をタップして EditText を削除します。ポップアップしたらすぐに EditText に直接入力するように、通常どおりに動作させるにはどうすればよいですか?
android - インプットメソッドでのカーソル移動とテキスト検索
初めての Android IME を設計していて、少し圧倒されています。私の目標はアクセシビリティに関連しているため、IME フレームワークでは不可能なことを試しているのではないでしょうか。デフォルトのソフトキーボードの例を取り上げ、いくつかの変更を加えて動作させたので、少なくともこれの一部は確実に理解できましたが、私が試みていることのいくつかに関するドキュメントはあまりありません. これが私が意味することです:
現在、タッチスクリーンのみのキーボードを搭載した Android スマートフォンにはアクセスできません。私は現在、IOS/VoiceOver で使用されているものと同様の方法を使用してアクセス可能なタッチスクリーン キーボードを使用しているため、プロジェクトの一部は完了し、IME フレームワークで達成するのはかなり簡単です。
現在、Android のアクセシビリティ API は、テキスト フィールドをナビゲートするためのアクセス可能なフィードバックを提供していません。つまり、Android スクリーン リーダーが読み込まれている状態で、「this」という単語を入力すると、入力した個々の文字が読み上げられますが、「s」の上で左矢印キーを押すと、それは読み上げられません。 . そのため、移動をトラップし、過去にナビゲートされた要素に対して音声フィードバックを提供したいと考えています。ここで私は問題に遭遇し始めます。
現在、左矢印と右矢印には音声フィードバックがあり、左矢印には getCurrentInputConnection.getTextBeforeCursor(1, 0) を使用し、右矢印には同様の呼び出しを使用しています。これにより、移動が処理された後に現在カーソルの下にある文字が取得され、すべて問題ありません。
ただし、私の課題は、行間を上下に矢印で移動するときに発生します。理想的には、現在のテキスト行を取得してそれを話したいのですが、それを行う方法がわかりません。私が考えることができる唯一のことは、getTextBefore/AfterCursor(Integer.MAX_VALUE, 0) とそれらの値を組み合わせて、前と次の \n をフィルタリングして現在の行を決定することです。フィールドのテキスト コンテンツ全体を 1 つのテキスト ブロックとして取得し、カーソル位置を使用してそのテキストのどの部分が現在の行を表しているかを判断する別の方法はありますか? さまざまなインプットメソッドクラスで抽出されたテキストについて何かを見ています。それを監視する方法があるようですが、それが私にとってまったく役立つかどうかはわかりません(つまり、フィールド全体が返されますか?コンテンツ?)
私の次の目標は、標準のテキスト ナビゲーション機能を提供することです。現在、Android のアクセシビリティにはタッチスクリーンの探索が含まれていないため、それ以外の方法で大きなテキスト ブロックをスクロールすることはできません。人々が携帯電話で小説を書くとは必ずしも期待していませんが、段落を上下に移動したり、長いフィールドの上/下に移動したりするための素早いジェスチャーやコマンドを提供したいと考えています。IMF はカーソル移動の方法を提供していますか、それとも IMF の権限外ですか?
android - テーブルレイアウトでandroid:imeOptions="actionNext"を使用する際の問題
3つのEditTextフィールドと計算を実行するボタンを備えたこのテーブルレイアウトがあります。
テーブルレイアウトの一番上の行にある左側のEditTextは、アクティビティの開始時にフォーカスがあります。ただし、ソフトキーボードの[次へ]をクリックすると、カーソルは右側(上の行)のEditTextではなく、下の行の左側のEditTextに移動します。上の行の右側のEditTextをテストしました。これにより、下の行の左側のEditTextにカーソルが送られます。
最初に上の行の左側のEditTextからカーソルを右に移動し、次に下の行の左側のEditTextにカーソルを移動する方法はありますか?
それが可能であれば、下の行の右側にあるボタンにフォーカスを移動するように調整することもできますか?
ありがとう
android - Android: EditTexts を含む ListView がフォーカスと IME を台無しにする
カスタム アイテムを含む ListActivity があり、すべてのアイテムに独自の TextEdit があります。それらのいずれかをテーピングすると、IME キーボードが表示され、ListView のサイズが変更されます。そのため、最近タップでフォーカスを取得した EditText はフォーカスを失います。フォーカスまたは確認するには、2 回目のタップが必要です。リストに1つ以上のアイテムを移動した場合にのみ発生します。
ワンタップで IME を開いて EditText にフォーカスしたままにする方法はありますか?
android - Windows で git bash を使用して Android プロジェクトを複製する方法
アラビア語で Android 用の IME を作成したいと考えています。
参照が必要で、これを見つけました:
https ://android.googlesource.com/platform/packages/inputmethods/LatinIME/+/master/java/res
そこで言われたように、ディレクトリツリーの1つをシステムに複製したいと思いました。
Windowsにgitをインストールすると、「git bash」アイコンが表示されました。私はそれを開いた、それが尋ねたもの、そしてこのエラーを得た:
致命的: リモート エンドが予期せず電話を切りました
今、私は無知です。
そのソースをどのようにダウンロードすればよいですか?
c++ - XP Professional システムで ITfThreadMgrEx を取得できません
Text Services Framework を使用しているときに、XP Professional システムで問題が発生しました。ITfThreadMgr から ITfThreadMgrEx インターフェイスを取得したいと考えています。Microsoft によると、ITfThreadMgr.QueryInterface() は ITfThreadMgrEx を取得するために使用されます。これを C++ で試したところ、E_NOINTERFACE が返されました。Microsoft によると、ITfThreadMgrEx は Windows 2000 TSF 1.0 で利用できます。したがって、当然、XP Professionalで利用できると思いました。
また、Windows 7 でこのプログラムを試してみましたが、問題ありません。しかし、国際言語極東言語サポートがインストールされた 2 つの異なる Windows XP Professional SP3 では、両方のシステムで同じ問題が発生します。
Microsoft のドキュメントによると、なぜ私がインターフェイスを取得できないのかを十分に知っている TSF に詳しい人はいますか? 私が試すことができるものについてのアイデアはありますか?
更新: 極東言語をインストールし、中国語 (PRC) を言語バー (コントロール パネルの地域と言語) に追加すると、ITfThreadMgr インターフェイスを取得できます。このインターフェイスは、CoCreateInstance() と TF_CreateThreadMgr() を使用して取得できます。
しかし、何らかの理由で、TIP の UI コンポーネントのカスタマイズに直接関連する ITfThreadMgr から QI されたインターフェイスは使用できません。ITfThreadMgr.QueryInterface から ITfClientId や ITfMessagePump などの他のインターフェイスを取得できますが、ITfUIElementMgr も ITfThreadMgrEx も取得できません。
TIP UI をカスタム描画する機能がインストールされていない、または有効になっていないようなものです。しかし、それが正しい方向であるかどうかは定かではありません。
winapi - Windows でテキスト カーソルの位置を確認する方法
現在アクティブなテキスト入力カーソルの画面座標を決定する最良の方法は何ですか?
テキストが入力されたときにユーザーにいくつかの提案オプションを表示できるように、インラインの音訳プログラムにこれが必要です。