HSPについてもう少し

HSPバージョン3.51をインストールすると、Cドライブ直下に「hsp351」フォルダが作成されます。この中にHSPのすべての情報が含まれています。HSPスクリプトエディターのほか、マニュアルやサンプルプログラムがあります。

 

デスクトップ上に「HSPスクリプトエディタ」と「HSPTVブラウザ」の二つのショートカットが作成されます。これらを起動してもPC-Talkerが読み上げてくれません。

 

マイスタートメニューからすべてのプログラム、Hot Soup Processor 3.51、の順に進むと、デスクトップ上と同じ二つのショートカットを含めて9本のメニュー項目があります。

 

マニュアルとサンプルプログラム

マニュアルの説明通りにプログラムを作っても、実行時に読み上げてくれない場合があります。サンプルプログラムを実行したときも読み上げてくれないことがあります。どの命令文が読み上げられないか、どの命令に替えたら読み上げてくれるか、これらを見つけてください。

 

HSPマニュアル総合インデックス

HSP公式ホームページです。この中のメニューに「初心者のためのHSP入門(beginner/start.htm)」がありますが、このページだけがリンクできません。四則演算計算機が理解できたら大丈夫です。

 

マイスタートメニューからすべてのプログラム、Hot Soup Processor 3.51、マニュアルインデックスの順に進みこれを起動すると、パソコン内にある「HSPマニュアル総合インデックス」が表示されます。こちらは「初心者のためのHSP入門」のページにリンクできます。

 

マイスタートメニューからすべてのプログラム、Hot Soup Processor 3.51、HSPスクリプトエディタの順に進みこれを起動して使用中は、メニューバーからヘルプ、HSPマニュアル目次に進むと「HSPマニュアル総合インデックス」が表示されます。

 

OHDL(Online HSP Document Library)ホーム

WEB上で公開されている「HSPドキュメントライブラリ」です。プログラム作成に関する情報が満載です。

 

マイスタートメニューからすべてのプログラム、Hot Soup Processor 3.51、ドキュメントブラウザの順に進んで起動すると、パソコン内にある「HSPドキュメントライブラリ」が表示されます。

 

HSPスクリプトエディタを起動して使用中は、メニューバーからヘルプ、HSP命令リファレンスを開くの順に進んで起動すると、パソコン内にある「HSPドキュメントライブラリ」が表示されます。また、エディタ内で命令文にカーソルを置いてF1キーを押すと該当する命令の説明が表示されます。

 

HSP3プログラミング情報 Let's HSP!

個人で運営されているホームページです。先頭ページは目次のようになっていて、六つのメニュー項目があります。これら6項目へのリンクとサイトマップへのリンクをこの下に引用させてもらいました。

HSP3命令入門講座 Let's HSP!

HSP3 あれこれ Let's HSP!

sendmsg命令 Tips集 Let's HSP!

HSPプログラミングTips集 Let's HSP!

HSP関連 自作ソフト Let's HSP!

HSPリンク Let's HSP!

サイトマップ Let's HSP!

 

プログラムでキーボードのどのキーが押されたかを調べることがよくあると思います。そのことを知るには、上記の「HSP3あれこれ」から「キーボード」に行く方法と、「サイトマップ」から「キーボード」に行く方法があります。六つのメニューとサイトマップを使い分けてください。

 

キーボードのすべてのキーには番号が付けられています。仮想キーコードといいます。四則演算計算機の回答例4では 13番のエンターキーと、27番のEscキーが押されたことを調べました。ほかにも39番の右矢印キーや37番の左矢印キーも良く使うと思います。

 

仮想キーコード一覧

こちらで、すべてのキーコードが確認できます。1番から6番はマウスボタンに割り当てられています。なので、仮想キーコードなのでしょう。

 

 

プログラミングの学習ではサンプルプログラムを見るのが効果的です。Cドライブ直下「hsp351」フォルダ内に「sample」フォルダがあります。この中にさらにフォルダがありサンプルプログラムが保存されています。しかしこの中から目的とするサンプルを探すのはたいへんです。

 

HSPリンク Let's HSP!

ここにもサンプルプログラムがあります。内容は確認しておりません。

 

変数と定数とデータ型

四則演算計算機でinput命令の数値1や数値2は変数です。変数は画面入力された値や計算結果で内容が変わります。

 

「button "計算", *計算と結果表示」で、ダブルコーテーションで囲まれた「"計算"」は内容が変わることはありません。変数に対して定数といいます。

 

変数や定数にはデータ型があります。数値型と文字列型などがあり、数値型は整数型や実数型があります。回答例1では1.5と入力したら整数で計算されました。回答例2ではinput命令の前で「数値1 = 0.0」としたことで実数になりました。

 

計算式におけるデータ型は先頭のデータにより決まります。

「1+1.5+1.5」は整数型で計算されて「1+1+1=3」になります。

「1.5+1+1」は実数型で計算されて「1.5+1.0+1.0=3.5」になります。

 

文字列型は足し算だけができます。計算結果は文字列が連結されます。

「"計算結果は"+1+"です"」は2回連結されて「計算結果は1です」になります。

「1+"が計算結果です"」は整数型で計算されて「1+0=1」になります。

 

ラベル

「button "計算", *計算と結果表示」で、「*計算と結果表示」はラベルです。プッシュボタンが押されたとかF5キーが押されたなどはイベントといいます。そしてこのことによりプログラムが動き出すことをイベントドリブンといいます。イベントが発生するとラベルがある位置に飛んで行きます。

 

ラベルは途中で流れを分岐したいときなどにも使います。例えば「input 学年」の命令文に対して入力された場合は、1から6までをチェックし、範囲外なら「*学年範囲外」に飛んで行きエラーメッセージを表示した後に再入力をしてもらいます。範囲内なら学年ごとに分岐して処理を変えることもあります。

 

mes命令とdialog命令

mes "こんにちは"

dialog "こんにちは"

これらの二つの命令文について考察します。

 

HSPの説明書の多くは、最初に『mes "こんにちは"』という命令文が紹介されています。この命令文を実行すると、画面上に「こんにちは」と表示されます。mes命令はメッセージを画面表示するといった意味合いがあると思います。

 

他のプログラミング言語では『print "こんにちは"』のような書き方をします。パソコンの原型はタイプライターです。キーボードの向こうにプリンターがありました。プリンターがモニター画面に変わった今でも、print命令を使っています。HSPにもprint命令があるようです。

 

『dialog "こんにちは"』の命令文を実行すると、メッセージボックスが表示されます。他のプログラミング言語の例では『msgbox "こんにちは"』のような書き方をします。dialog命令はダイアログボックスとメッセージボックスの二種類を表示します。HSPのmesbox命令はこれらとは別物です。

 

mes命令で画面表示された『こんにちは』はPC-Talkerが読み上げてくれません。

dialog命令でメッセージボックス内に表示された『こんにちは』はPC-Talkerが読み上げてくれます。

 

プッシュボタンについて

PC-Talkerが『マルマルのプッシュボタン』といいますが、マイクロソフトのパソコン用語ではコマンドボタンです。HSPでは単にボタンと呼んでいて、button命令で画面表示します。一般的なコマンドボタンはエンターキーまたはスペースキーを押したら反応しますが、buttou命令で表示したボタンはスペースキーだけが反応します。dialog命令で表示したメッセージボックスのOKボタンは『エンターはOK』と読み上げられて、両方が反応します。

 

HSPのボタンと一般的なコマンドボタンは、どちらもPC-Talkerが『マルマルのプッシュボタン』と読み上げますが別物のようです。マイクロソフトにはオプションボタン(昔の名前がラジオボタン)があります。HSPにはそれがありません。あるのですが、裏技を使わないと表示できません。ラジオボタンの語源はカーラジオのボタンです。こちらも今は見かけなくなりました。

 

オブジェクトとコントロール

パソコン上にあるものはすべてオブジェクトといいます。マウス、キーボード、キーボード上のキー、すべてオブジェクトです。四則演算計算機ではボタン、コンボボックス、リストボックス、等を画面上に配置しました。この画面のことをフォームといいます。これらもすべてオブジェクトです。

 

マイクロソフトのマニュアルには次のように書いてあります。「コントロールは、フォーム オブジェクトに含まれるオブジェクトです」。フォーム上のボタン、コンボボックス、リストボックス、等はオブジェクトですが、一般的にコントロールということが多いと思います。

 

HSPとマイクロソフトの間で、同じものが別の名前だったり、別のものが同じ名前だったりします。このような例がほかにもあり、他のプログラミング言語を知っていてHSPに来るといろいろ戸惑いました。最初がHSPだとそんなことはないと思いますが、将来、他の言語に行ったときのご参考まで。

 

コンパイラー言語とインタープリター言語

コンパイルの意味は翻訳です。コンパイラーは翻訳するプログラムです。人間語の翻訳はトランスレーションです。日本語から英語、中国語、等への変換をします、その逆もあります。

 

コンパイラーはいろいろなパソコン語から機械語への一方通行の翻訳をします。パソコン語はコンパイルをして0と1だけの機械語に変換すると、実行させることができます。人間はパソコン語を習得しますが機械語を覚える必要はありません。

 

一方のインタープリターは通訳です。パソコン語から機械語への変換と実行を一行ずつ繰り返します。

 

コンパイラー言語はプログラム中に文法エラーがあると、すべての間違いを修正してから実行します。では実行中にエラーが見つかって止まっても、その場で修正して続行できます。4月29日だけ実行する特別な命令文がある場合は数年後に気づくこともあります。

 

HSPではF5キーを押すと、全体が機械語に変換されてから実行されます。さて、HSPはコンパイラー言語またはインタープリタ言語のどちらでしょうか?