ひまわりユーザー プログラム掲示板 バックアップ
注意
ひまわりのススメ  □ ひまわり本家Home  □ 新着記事  □ 新規投稿  □ SEARCH  □ 参考プログラム集
ツリー表示

MESSAGE キー番号調査・ひまわり用 バージョン1.2.. /yuk (02/03/28(Thu) 03:00) [665]
......MESSAGE Re[1]: キー番号調査・ひまわり用 /北神 陽太 (02/03/28(Thu) 11:25) [668]
......MESSAGE バージョンアップしました。 /yuk (02/03/28(Thu) 14:49) [673]
............MESSAGE Re[2]: バージョンアップしました。 /北神 陽太 (02/03/28(Thu) 15:28) [674]
......MESSAGE 再びバージョンアップ /yuk (02/04/09(Tue) 01:47) [727]


親記事 / ▼[ 668 ] ▼[ 673 ] ▼[ 727 ]
NO.665  キー番号調査・ひまわり用 バージョン1.2(20020409)
□投稿者/ yuk -(2002/03/28(Thu) 03:00:06)
□U R L/ ../../
{---プログラム掲示板投稿フォーム---
【ソフト名】キー番号調査・ひまわり用 (バージョン 1.20)
【作 成 者】yuk (連絡先:xxx)
【種  別】フリーソフトウェア
【ひまわりのバージョン】ver.1.37
【転  載】可/(作者にメールで連絡してくれるとうれしいです。)
【改変運用】可
【ひまわり本体への梱包】可
【実行時に利用作成するファイル】無
【コメント】
前ににゃんこさんが投稿していたものを参考に作りました。
主に、自分用です。
北神さまのご意見により、バージョンアップしました。
私のキーボードにあるキーにはすべて対応させました。
20020409
・テンキーにも対応しました。
・条件分岐の形式でも張り付けられるようにしました。
---投稿フォームここまで---}
バージョン=1.2

母艦の、タイトルは、「キー番号調査・ひまわり用」
文字色は、「#990000」
母艦の、背景色は、「#ccff99」
母艦の、高さは、85
母艦の、幅は、260
母艦を、中央に移動。
母艦の、キー離した時は、キーイベント。
母艦浮上。

ペン色は、「#ffaacc」
塗り色は、白色。
(10,34)から、(250,60)へ、四角形。
ファイルメニューを、メニュー作成。
ファイルメニューに、終了メニューを、メニュー追加。
その、イベントは、おわり。
貼り付けメニューを、メニュー作成。
貼り付けメニューに、もしメニューを、メニュー追加。
その、イベントは、貼り付けイベント。
貼り付けメニューに、条件分岐メニューを、メニュー追加。
その、イベントは、条件貼り付けイベント。
ヘルプメニューを、メニュー作成。
その、イベントは、ヘルプイベント。

「*番号を知りたいキーを押してね*」と、表示。

表示メモを、ラベルとして、作成。
その、Xは、15。
その、Yは、38。
その、テキストは、「」。

待機。
*貼り付けイベント
もし、表示メモ=『』ならば、待機。
もし、キーの名前=特殊キーならば、(特殊キー貼り付けイベント。待機。)
"\「押されたキー={表示メモ}\」で、いいですか?"と、二択。
もし、それが、はいならば、(
   「現在のカーソル位置に挿入します。\nよろしいですか?」と、二択。
   もし、それが、はいならば、(
      "himapad"の、"command"へ、"insert もし、押されたキー={表示メモ}ならば、"を、DDE送信。
      終了イベント。戻る。)
   "もし、押されたキー={表示メモ}ならば、"を、クリップボードへ、書く。
「コピーしました。Ctrl+Vで、\n好きなところに値を張り付けられます。」と、言う。
終了イベント。戻る。
)
戻る。
*条件貼り付けイベント
もし、表示メモ=『』ならば、待機。
もし、キーの名前=特殊キーならば、(
"特殊キーは\「もし、ならば\」の形式で張り付けます。\nよろしいですか。"と、二択。
もし、それ=いいえならば、戻る。
特殊キー貼り付けイベント。
待機。)
"\「{表示メモ}の時、\」で、いいですか?"と、二択。
もし、それが、はいならば、(
   「現在のカーソル位置に挿入します。\nよろしいですか?」と、二択。
   もし、それが、はいならば、(
      "himapad"の、"command"へ、"insert {表示メモ}の時、"を、DDE送信。
      終了イベント。戻る。)
   "{表示メモ}の時、"を、クリップボードへ、書く。
「コピーしました。Ctrl+Vで、\n好きなところに値を張り付けられます。」と、言う。
終了イベント。戻る。
)
戻る。
*特殊キー貼り付けイベント
もし、押したキー=16ならば、特殊名=「押された特殊キー=Shift」
もし、押したキー=17ならば、特殊名=「押された特殊キー=Ctrl」
もし、押したキー=18ならば、特殊名=「押された特殊キー=Alt」

"{特殊名}で、いいですか?"と、二択。
もし、それが、はいならば、(
   「現在のカーソル位置に挿入します。\nよろしいですか?」と、二択。
   もし、それが、はいならば、(
      "himapad"の、"command"へ、"insert もし、{特殊名}ならば、"を、DDE送信。
      終了イベント。戻る。)
   "もし、{特殊名}ならば、"を、クリップボードへ、書く。
「コピーしました。Ctrl+Vで、\n好きなところに値を張り付けられます。」と、言う。
終了イベント。戻る。
)
戻る。

*終了イベント
「続けますか?」と、二択。
もし、それ=いいえならば、おわり。
待機。

*キーイベント
押したキー=押されたキー
キーの名前=文字(押されたキー)
押されたキーで、条件分岐。
8の時、(キーの名前=Backspace)
9の時、(キーの名前=Tab)
13の時、(キーの名前=Enter)
16の時、(キーの名前=特殊キー)
17の時、(キーの名前=特殊キー)
18の時、(キーの名前=特殊キー)
19の時、(キーの名前=Pause)
27の時、(キーの名前=Esc)
28の時、(キーの名前=変換)
29の時、(キーの名前=無変換)
32の時、(キーの名前=Space)
33の時、(キーの名前=PgUp)
34の時、(キーの名前=PgDn)
35の時、(キーの名前=End)
36の時、(キーの名前=Home)
37の時、(キーの名前=←)
38の時、(キーの名前=↑)
39の時、(キーの名前=→)
40の時、(キーの名前=↓)
44の時、(キーの名前=PrtSc)
45の時、(キーの名前=Insert)
46の時、(キーの名前=Delete)
96の時、(キーの名前=「0\(テンキー\)」)
97の時、(キーの名前=「1\(テンキー\)」)
98の時、(キーの名前=「2\(テンキー\)」)
99の時、(キーの名前=「3\(テンキー\)」)
100の時、(キーの名前=「4\(テンキー\)」)
101の時、(キーの名前=「5\(テンキー\)」)
102の時、(キーの名前=「6\(テンキー\)」)
103の時、(キーの名前=「7\(テンキー\)」)
104の時、(キーの名前=「8\(テンキー\)」)
105の時、(キーの名前=「9\(テンキー\)」)
106の時、(キーの名前=「*\(テンキー\)」)
107の時、(キーの名前=「+\(テンキー\)」)
109の時、(キーの名前=「-\(テンキー\)」)
110の時、(キーの名前=「.\(テンキー\)」)
111の時、(キーの名前=「/\(テンキー\)」)
112の時、(キーの名前=F1)
113の時、(キーの名前=F2)
114の時、(キーの名前=F3)
115の時、(キーの名前=F4)
116の時、(キーの名前=F5)
117の時、(キーの名前=F6)
118の時、(キーの名前=F7)
119の時、(キーの名前=F8)
120の時、(キーの名前=F9)
121の時、(キーの名前=F10)
122の時、(キーの名前=F11)
123の時、(キーの名前=F12)
145の時、(キーの名前=ScrLk)
186の時、(キーの名前=":")
187の時、(キーの名前=";")
188の時、(キーの名前=",")
189の時、(キーの名前="-")
190の時、(キーの名前=".")
191の時、(キーの名前="/")
192の時、(キーの名前="@")
219の時、(キーの名前="[")
220の時、(キーの名前=『\』)
221の時、(キーの名前="]")
222の時、(キーの名前="^")
226の時、(キーの名前="ろ")
240の時、(キーの名前=『ひらがな』)
242の時、(キーの名前="CapsLk")
243の時、(キーの名前="全角/半角")
244の時、(キーの名前="全角/半角")

表示メモ=「{押したキー}\{{キーの名前}\}」
戻る。

*ヘルプイベント
「キー番号調査・ひまわり用\nver.{バージョン}\nby   yuk\n
このプログラムは\nにゃんこさん作『キー番号調査』を\n参考に作りました。」と、言う。
「説明を読みますか?」と、二択。
もし、それ<>はいならば、戻る。
「キー番号を知りたいキーを押してください。\n
貼り付けメニューの[もし]を押すと\n現在のカーソル位置またはクリップボードに
[もし、押されたキー=XX\{キーの名前\}ならば、]\nの形式で書き込みます。\n
貼り付けメニューの[条件分岐]を押すと\n現在のカーソル位置またはクリップボードに
[もし、XX\{キーの名前\}の時、]\nの形式で書き込みます。
」と、言う。
「注意\nテンキーがないキーボードもあるので、
テンキーの扱いには気をつけましょう。」と、言う。
「キーの名前が正しく表示されない場合は\n作者までご連絡ください。
また、そのキーを使ったプログラムは\n配布しないようにしたほうが賢明です。
そのキーがないキーボードもあります。」と、言う。
「説明、おわり。」と、言う。
戻る。



▲[ 665 ] / 返信無し
NO.668  Re[1]: キー番号調査・ひまわり用
□投稿者/ 北神 陽太 -(2002/03/28(Thu) 11:25:45)
□U R L/ http://homepage1.nifty.com/kitagami/index.htm
 半角/全角キーが、怖い表示になります。(もし、押されたキー=229{蛩ならば、)

 また、いくつかのキーは、認識しないですね。たぶん、入力エディタ部品を使っている関係と、キーを押した時では認識できないキーの関係だと思います。

1)入力を持たない「母艦」のイベントを利用。
2)「キー離した時」イベントで作る。

 これで、認識できると思います。(TABキーとか)

{サンプルソース}
母艦の、キー離した時は、キーイベント。
待機。

*キーイベント
 白色で、画面クリア。(0,0)へ、移動。
 文字(押されたキー)。それを、表示。
 押されたキーを、表示。
待機。



▲[ 665 ] / ▼[ 674 ]
NO.673  バージョンアップしました。
□投稿者/ yuk -(2002/03/28(Thu) 14:49:01)
□U R L/ ../../
北神様、アドバイスどうもありがとうございました。
おかげで私の環境では、どのキーを押しても対応するようになりました。

ところで、半角/全角キーはキー番号が二つあるんですけど、どのように解釈、処理するのが妥当なのでしょうか?



▲[ 673 ] / 返信無し
NO.674  Re[2]: バージョンアップしました。
□投稿者/ 北神 陽太 -(2002/03/28(Thu) 15:28:43)
□U R L/ http://homepage1.nifty.com/kitagami/index.htm
 半角/全角キーですが、これはimeと関連があるみたいですね。全角が243、半角が244で返って来るようです。この動作は、ちょっと不明ですね。

 う〜ん・・・、この機能はキースキャンを使っていると思われるので、shiftキーなどの判定が出来る反面、文字に変換したとき、ASCiiコードと違う部分があるんです。たとえば、同じ数字でもテンキーはコードが違います。これは文字ではなく、押されたキーが何であるか? を取得しているためなんですね。テンキーを押すとaと表示されてしまうのは、このためです。(96から105は、表示するときに工夫が必要ですね)

 だから、Aとaを区別することが出来ないんですよ・・・。

 もうひとつ、本来キースキャンは、複数のキーが同時に押されても識別できるのですが、なぜかひとつしか取得できないですね。




▲[ 665 ] / 返信無し
NO.727  再びバージョンアップ
□投稿者/ yuk -(2002/04/09(Tue) 01:47:38)
□U R L/ ../../
mokaさんのサイトで紹介されていたのでうれしくなってバージョンアップさせました。
条件分岐の時の「XXの時、」の形式で書き出せるようにしました。
また、テンキーにも一応対応させました。
使ってみてください。



- Child Tree -