7

フルスクリーンの DirectX デスクトップ アプリがあり、ユーザーがゲーム内のテキスト ボックスをタップしたときにオンスクリーン キーボードを表示したいと考えています。フルスクリーンモードでこれを行う方法はありますか?

4

4 に答える 4

17

osk.exe を実行すると、昔ながらのオンスクリーン キーボードが表示されます。を実行すると、Windows 8 タッチ キーボードがポップアップします。

C:\Program Files\Common Files\Microsoft Shared\ink\TabTip.exe

キーボードが接続されていないタブレットPCで実行されているフルスクリーンのデスクトップアプリで作業しているので、私はそれを理解しました。

セヴェリン。

于 2012-08-24T12:55:34.590 に答える
3

Severin Stampler と同じ答えですが、c# から正しいパスを見つけるために次を使用します。

var path = Environment.GetFolderPath(Environment.SpecialFolder.CommonProgramFiles) + @"\Microsoft Shared\ink\TabTip.exe";

if (!File.Exists(path))
{
   // older windows versions
   path = Environment.GetFolderPath(Environment.SpecialFolder.System) + @"\osk.exe";
}
于 2013-05-28T09:55:22.403 に答える
1

デスクトップアプリの場合は、を呼び出す必要がある場合がありShellExecuteますosk.exe

Metroアプリケーションの場合、アプリ自体からSIPを呼び出すことはできません。MSDNのドキュメントによると:

これは、アプリケーションがフォーカスの操作を介してプログラムでタッチキーボードを呼び出すことができないことを意味します。過去のここでの大きな犯人はウェブページでした—それらの多くはデフォルトでフォーカスを設定します

于 2012-08-09T03:29:48.950 に答える
1

Windows 8 タッチ キーボードは非常に簡単に表示できます。

http://brianlagunas.com/showing-windows-8-touch-keyboard-wpf/

于 2013-12-18T03:14:46.330 に答える