Hot Soup Processor スクリプト言語システム
HSP . ウィンドウ、ダイアログ


PSH x HSP 講座 オブジェクト COM MCI 用語 ソフト HTMLタグ リンク

フリーウェアのスクリプト言語システムHSPを利用したプログラミング講座です。ONION softさんが開発したものです。HSPは無料ソフトですよー。

screen

HSPウィンドウ画面を用意する命令です。ウィンドウの大きさサイズ、表示位置の指定ができる。

width

screenでウィンドウを用意した後に、ウィンドウの表示される位置、ウィンドウの大きさ(サイズ)だけ変えたい場合はwidthを使う。 複数のウィンドウがあるなら、gselで操作ウィンドウの変更を行なう。

プログラムの終了と確認用ダイアログ

「end」命令がプログラムの終了命令です。onexistを用意しておくと、ユーザーが終了(ウィンドウの×ボタン を押す)した時に指定してあるラベルに処理が飛んでくる。ここで終了確認用ダイアログ(「dialog」命令は下で説明)などを用意すればよい。アプリケーションの設定を保存セーブするような場合にもこの場面で行うとよい。

  onexit *owari
  stop

*owari
  dialog "本当に終了しますか?",2,"終了"
if stat=6 : end

マウスの位置

マウスカーソルの位置はmousexとmouseyに代入されてる。これは基点がHSPウィンドウ内で、モニタ画面全体のマウス位置はginfo_mxとginfo_myを見る。

;マウスカーソルの座標位置

repeat

title "X:"+mousex+" Y:"+mousey+""
wait 10

loop

外部アプリケーション(実行ファイル)の起動

「ecec」命令は外部のEXEファイルを起動でできる命令。filenameのパラメータに実行ファイルのパス文字列を指定する。下のサンプル例はWindowsユーティリティ(Windwosフォルダにある)なため実行ファイル名だけで起動できるものである。

  screen 0,140,140
    title "ランチャー"

  gsel 0,2 ; 最前面ウィンドウ指定

  objsize 70,70
  pos 0,0:button "メモ帳",*notepad
  pos 70,0:button "ペイント",*paint
  pos 0,70:button "電卓",*calc
  pos 70,70:button "ワードパッド",*wordpad

  stop

*notepad
  exec "notepad" ;メモ帳
  stop

*paint
  exec "mspaint" ;ペイント
  stop

*calc
  exec "calc" ;電卓
  stop

*wordpad
  exec "write" ;ワードパッド
  stop

ダイアログの表示

「dialog」命令には3種類のダイアログを表示できる。

まずメッセージダイアログは、指定した文字を表示するダイアログ。ボックスが表示されてる間はHSPのウィンドウは 操作できない。第2パラメータで、0〜3を指定すと、いくつかタイプを選べる。ダイアログ内の押されたボタンによって HSPのシステム変数statに結果が代入される。(「はい=6」、「いいえ=7」、「OK=1」)

   dialog "文字列",0,"タイトル"
  mes stat

  dialog "文字列",2,"タイトル"
  mes stat

ファイルのオープンダイアログは、第2パラメータで、16(開く)か17(保存)を指定し、ファイルを開いたり保存 したりするダイアログが表示される。"message"には開くファイルの拡張子、"option"にはそのファイルの説明を 指定する。複数の拡張子したい時は「;*.」を付け足す。ファイルの選択が問題なく行われたら、HSPのシステム変数statに1、それ以外は0が代入される。そして、システム変数 refstrにはファイルのフルパスが代入される。

   dialog "mp3;*.wav",16,"音楽ファイル"
  if stat=0 : mes "選択しなかった" : stop

  mes stat
  mes refstr

HSP入門MENU

HSP入門1 : 文字の表示、タイトルバー
HSP入門2 : ループ、ラベル
HSP入門3 : 色、ポジション
HSP入門4 : 文字処理
HSP入門5 : 日時・時間
HSP入門6 : フォント、画像
HSP入門7 : ウィンドウ、ダイアログ

Q&A (準備中)

0.HSPを利用していくうえでポイントは?

1. HSPでプログラム言語を作成できる?
 ちょっと難しいです。HSPはインタプリタというスタイルの言語なので。

2. ウィンドウにメニューを作成するには?
 Windows APIというのを使うと作成できるみたいですが、分からない人ようにメニューを表示するHSPモジュールが付いてます。「mod_menu.as」というファイルです。

3.ダイアログボックスで「はい」「いいえ」以外の文字を表示するには?
 できません。Windows APIというのを使うとたがう種類のダイアログは表示できますが、文字はいじれません。

4.ホームページをブラウザで開きたい。
 execが使えます。URアドレスを指定して起動タイプは16です。デフォルト設定になってるインターネットブラウザで立ち上がります。

〜〜〜〜〜

HSP

PSH x HSP | HSP講座 | 実行ファイルの作成方法 | オブジェクトの用意 | 音楽・動画の再生 | HSPの用語