• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:キーセッティング機能・・・?)

キーセッティング機能とは?

このQ&Aのポイント
  • キーセッティング機能とは、タイピングゲームにおいて、入力方法自動判別機能が不要になる機能です。
  • 通常、単語ごとに異なるパターンの入力を用意する必要がありますが、キーセッティング機能を使用すると、自動で入力方法が判別されます。
  • キーセッティング機能の導入により、作業効率が向上し、入力パターンの数も削減できます。

質問者が選んだベストアンサー

  • ベストアンサー
  • perse
  • ベストアンサー率74% (113/152)
回答No.1

簡単なのは日本語で判断することです。 キーを押すごとに打った文字を平仮名に変換します。「じょうかまち」の場合だと 最初に「j」を打ちます →平仮名に変換できない 次に「o」を打ちます  →joなので「じょ」に変換される もちろん zyo と打った時も同じ様に「じょ」になります。 説明しづらいのでASを書きました。 以下をフレームに貼り付けてください。 (全角スペースが入っているので半角スペースか空文字列に置き換えて) //------------------------------------------------------------------------- var key_obj:Object = new Object(); var mondai:String; //打ち終わった文字(ひらがな) var typed:String = ""; //打ってる最中の文字(ローマ字) var typing:String = ""; var view:String = ""; mondai = "じょうかまち"; // key_obj.onKeyDown = function() {   w = String.fromCharCode(Key.getAscii());   if (Key.isDown(Key.BACKSPACE)) {     //バックスペース     //末尾文字削除 ( 最初の文字から最後の文字の一つ前まで取得)     typing = typing.slice(0, -1);   } else {     typing += w;   }   //ひらがなに変換   hira = GetHiragana(typing);   if (hira == "") {     //変換できなかった時 ( =入力途中)   } else {     //変換できた時     typed += hira;     typing = "";   }   view = typed+typing;   trace(view); }; function GetHiragana(w:String) {   r = "";   switch (w) {   case "jo" :   case "jyo" :   case "zyo" :     r = "じょ";     break;   case "ji" :   case "zi" :     r = "じ";   case "lyo" :   case "xyo" :     r = "ょ";     break;   case "u" :     r = "う";     break;   case "ka" :     r = "か";     break;   case "ma" :     r = "ま";     break;   case "ti" :   case "chi" :     r = "ち";     break;   }   return r; } Key.addListener(key_obj); //-----------------------------------------------------------------ここまで しかしこの方法だとローマ字を打った時点では正誤判定が出来ません。 たとえば「じょうか」まで打ったとして次のキーは「m」ですが、 「p」でも「e」でも「r」でも何でも打ててしまいます。 それを消すためにBackSpaceキーを押せるようにしてあるのですが、 タイピングでそういうのってあまりないですよね。 一般的なタイピング(?)みたいに問題がローマ字表示されていて 打ち終わった部分が問題から削られていくタイプのものでの自動変換は 私の考える限り一文字づつ見ていくしかないかと思います。 「joukamachi」と表示されていて「z」を打った場合、 今の文字が「j」で次の文字が「o」だからzの入力を受け付けてjoをzyoに置換。 「youkamachi」になって「i」を打った場合、 前の文字が「z」で今の文字が「y」で次の文字が「o」だからiの入力を受け付けてzyoをzixyoに置換。 と言う風に条件分岐の嵐ですね。 それは大変そうなので次に入力候補を絞っていく方法です。 以下をフレームに貼り付けてください。 (全角スペースが入っているので半角スペースか空文字列に置き換えて) //------------------------------------------------------------------------- var key_obj:Object = new Object(); var mondai:String; var idx:Number = 0; var kouho_array = new Array(); var miss_bln:Boolean; var N_bln:Boolean = false; mondai = "[jo|zyo|jixyo|zixyo]ukama[chi|ti]"; // Key.addListener(key_obj); key_obj.onKeyDown = function() {   //ミス入力フラグ初期化   miss_bln = false;   //キーボードで打った文字を取得   w = String.fromCharCode(Key.getAscii());   //問題文の一文字目が何かを判断   switch (mondai.charAt(idx)) {   case "[" :     // 一文字目が"[" のとき     // "]"の位置を取得     pos = mondai.indexOf("]", idx);     // [ ] の中の文字を | で区切って配列に入れる     // ( jo 、zyo、jixyo、zixyoに分かれて入る )     kouho_array = mondai.substr(idx+1, pos-1).split("|");     // 「ん」の時     if (kouho_array[0] == "N") {       //「ん」入力フラグを立てる (次にnを押してもタイプミスにしない)       N_bln = true;       s = "";     } else {       //キーボードで打った文字と候補の一文字目を比較       for (i=kouho_array.length-1; i>=0; i--) {         if (w != kouho_array[i].charAt(0)) {           //打った文字が候補と違う場合、その候補は削除する           kouho_array.splice(i, 1);         }       }       if (kouho_array.length == 1) {         //候補が一つだけ残ったとき → その候補に決定         s = kouho_array[0].substring(1);       } else if (kouho_array.length>=1) {         //一つ以上のこったとき | 区切りにして[ ] で囲う         // ( 次にキーを打ったときまた候補として出てくる)         s = "[";         for (i=0; i<kouho_array.length; i++) {           if (i>0) {             s += "|";           }           s += kouho_array[i].substring(1);         }         s += "]";       } else {         //候補の数が0 ⇒ ミス入力時         // "[" から "]" までの文字列を取得         //s = mondai.substr(idx, pos+1);         trace("ミス入力 "+w);         miss_bln = true;       }     }     if (!miss_bln) {       //ミス入力以外       //問題再作成 = s + "]" 以降の文字列       mondai = s+mondai.substring(pos+1);     }     break;   default :     //一文字目がその他のとき     //打った文字が正しいか判断     if (w == mondai.charAt(idx)) {       //正しい場合は打った文字を削る       mondai = mondai.substring(1);     } else if (N_bln) {       //「ん」入力フラグがたっている時 「n」を入力しても正解       N_bln = false;       //switch文を抜けたトコで一文字削除するのでnを付け加えとく       hyouji = "n"+hyouji;     } else {       trace("ミス入力 "+w);       miss_bln = true;     }   }   if (!miss_bln) {     //表示用テキスト一文字削除     if (hyouji.charAt(0) == w) {       hyouji = hyouji.substring(1);     }   }   if (mondai.length == 0) {     trace("終了");   } else {     trace(mondai);   } }; //-----------------------------------------------------------------ここまで 見ての通り複数入力候補のあるローマ字は[ ]で囲って「|」で区切ります。 「じょ」の場合は[jo|zyo|jixyo|zixyo]です。 それいがいは普通に記述します。 1回入力でも2回入力でもいい「n」(「ん」)の場合は、 mondai = "[ja|jya|zya|jixya|zixya][N]ke[N]ponn"; //(じゃんけんぽん) と言うように大文字のNで記述してください。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルのグラフ機能について教えてください。

    エクセルのグラフ機能について教えてください。 毎月1つの表からエクセルのグラフ機能を使って折れ線グラフを作成しています。グラフ作成後に分りやすいよう100%のところにオートシェイプで線を入れています。(縦軸(Y軸)は目標に対する達成率になっています) 数種類のグラフを作成するので、手作業で線を入れるのはとても面倒です。エクセルの機能で自動的に100%のところに線が引ける、又は100%の目盛線だけ色を変えて表示する、といった機能は無いでしょうか?

  • こんなネットプリントサービスありますか?

    例えば、 同じサイズの写真を10枚送ったとすると・・・ その10枚を自動で縮小&拡大してA4サイズ1枚とかに配置してくれるようなサービス・技術。 確か顔認識機能とか付いてて、良いと判別した写真を自動で大きく表示する仕組みがあるサービスが あったような・・・ どなたかご存知の方よろしくお願い致します!

  • 携帯判別

    PHPで携帯のキャリア判別をし、表示させるページを振り分けています。 最近問題になってきたのが、携帯の画面の解像度も多岐にわたり表示が統一できないことにあります。 よって機種ごとに表示させる画像をGDを使って適応したサイズにリサイズしたものを表示させるつもりです。 が、どんなサイズを用意したらいいのかがよくわかりません。 皆様はどのように対応しているのかお知恵をお貸しください。 ・モニタの解像度の取得方法 ・用意する画像サイズのパターンの数 前者はDBなどに持っておくという手くらいしかないのでしょうか? これだと新機種が出る度にDBの更新も行わなくてはならず、運営上できるだけ避けたいです。 これ以外に方法がなければ仕方がないのですが… また、シェアウェアで判別用のクラスがあるようですが、都合によりシェアウェアには手を出せません。 後者は要するに解像度って何パターンくらいあるのか?ってことです。 無数にある解像度を全部振り分けているのか、ある程度一くくりにして振り分けているのか… 皆様のやり方を是非教えて頂ければと思います。

    • ベストアンサー
    • PHP
  • 記録紙サイズの自動判別

    「MFC-J6975CDW」を使用しています。 コピーにて、現行の用紙サイズに応じた記録紙サイズの自動判別(A4/A3)機能はないのでしょうか? コピーする際に毎度、現行のサイズを指定するのが煩わしいです。 あって当たり前の機能だと思っていましたが、どうなのでしょうか。 「こうやればできるよ」がありましたらご教授いただければ幸いです。 ※OKWaveより補足:「ブラザー製品」についての質問です。

  • 録画機能付きテレビ

    寝室のテレビがアナログなので、地デジに買い替えたいとおもっています。 録画機能付きテレビ シングルチューナーNG 時計表示機能が付いていて常に時刻を確認できる。 目覚ましタイマー機能が付いていて朝自動でスイッチON サイズ19or21or22あたり 欲を言えばBSも見れる 大手電気メーカーの店員さんに伺ったのですが、マイナーな機能なのか ちゃんとした機種わからなかったので、ご存知の方おしえてくださいませm(__)m リビングで日立 WOOOを4~5年前に32型を買いました 気に入ってるのですが、時計表示と目覚ましタイマーが付いていればなぁと思っています (視聴予約は付いているのですが、電源が付いていないとだめみたいで) あと、最近は外付けUSBHDDってのがありますが、HDD別電源や別スイッチが 必要だと面倒で、いやだなぁと考えています。 予約時間が来ると自動でON・OFFなんですかねぇ?

  • テキストファイルを自動編集したい

    注文ファイルがプロバイダのサーバに入ります。 ファイルはテキストファイルで、下記のようになっています。 1注文コード:123 1商品名:納豆 1サイズ:中 1数量:10 2注文コード:234 2商品名:納豆 2サイズ:大 2数量:5   途中省略 5注文コード:0 5商品名: 5サイズ: 5数量:0 住所: 氏名: 電話: 備考: といった感じで、規則的なテキストファイルですが メールに編集するときに、コピペで作業するのが面倒です。 エクセルやワードの機能などで、返信用メール文書を自動 編集させたいのですが、可能でしょうか? テキストファイルを整形するだけでもかまいません。 (あとはメールにコピペしますので。) マクロで作成する場合は、ヒントをください。 また、フリーソフト等で自動編集が実現できるものがあれば 教えてください。 よろしくお願いいたします。

  • アドビ プレミア

    映像編集で、エンドロールをつくっているのですが、文章のデータはワードでもらっております。 すごい量があるのですが、ワードからコピー、タイトルに貼り付けみたいな機能はプレミアにはないのでしょうか? また、もしくはワードからの貼り付けでイラストレーターやフォトショップを使用してプレミアに対応できるということはないでしょうか? とにかくこのプレミアタイトルにタイピングするという作業を省略したいのですが・・・・。 どなたか、御教授お願いいたします。

  • Microsoft IME 辞書ツール2000が機能しません。

    何故だか理由は分かりませんが、急にMicrosoft IME 辞書ツール2000が機能しなくなりました。特に何か設定を変えた訳でもないのですが、Microsoft IME 辞書ツール2000を立ち上げると、「辞書のオープンに失敗しました。」というウィザードが出てきます。今まで登録してた単語も全部消えてて、新たに登録しようとしてもやはり同じ様に辞書のオープンに失敗しました。」というウィザードが出てきます。 またこの症状が起こるようになってから、文字入力の学習機能が無くなりました。今までは同じ言葉を何回か入力したら、その後は自動的に変換されてたのですが、その機能も停止してしまってます。なので何度も同じ変換作業をしなければならず、かなり手間が掛かります。 どうすれば復活出来るでしょうか。宜しくお願い致します。

  • photoshopの様なアクション機能があるソフト

    mac os 10.6の環境です。 タイトルとかぶりますが、photoshopの様なアクション機能がある安めのソフト (フリーが希望なのですが)を探しています。 ネットにupする画像が、常に数十枚あり、手作業で毎回処理するとえらく時間がかかります。 主に、サイズ変更や、レベル調整、シャープなどの、初歩的な機能しか使わないので photoshopは高価過ぎて手が出ません。。 一応、現在element11の体験版を試しているのですが、 既に規定の中でしか選べないアクション機能なので、イマイチやりたい事ができません。 どなたか、アクションの様な自動処理がある、安めソフト(出来ればフリー)をご存知ないでしょうか? もしくは、画像加工のソフトはフリーのものを使って、 automatorの様な自動処理ソフトも考えています。 ↑こちらも試したのですが、イマイチ使いこなせませんでした。 もう数日間探し続けているのですが、解決策が見つからず困っております。 宜しくお願い致します。

  • PhotoShopでデザインしたものをHPに

    http://www.webdesignlibrary.jp/2009/06/professional-dark-header.php ここを見てフォトショップでホームページデザインができることがわかりました。 ですが、ここでデザインしたものをどうHPに反映させるのかがわかりません。 前にジオシティーズでHPを作ろうとしたときは、無知ながらJIF形式の画像を用意して、HTMLでリンク範囲を指示して…という具合に作っていたのですが(割と強引な手法でしょうか)別のPCで見たときにサイズが合わず、画像データの足りない部分が白く表示されてしまっていたりと、完全にHPの作り方が間違っていたのだなと痛感しました。 フォトショップでヘッダー等を作っても、このパターンと同じようにサイズの届かない部分が白いスペースで表示されてしまうのではないか?リンクのボタン等はどう機能させればいいのか?など、いまいち概念がわかりません。 簡単にでも教えてもらえると助かります。 又は参考になるようなHPを教えていただければと思います。 よろしくお願いします