今回は突然イベントから離れて、アラートについてやります。 アラートを表示するにはリソースがいります。今までと同じようにALRTリソースを作ってください。それで、ウインドウの時と同じような感じになるはずですが、デスクトップらしき所の真ん中のものをダブルクリックしてください。そうすると、ウインドウ一つとフローティングウインドウらしきものができましたね。とりあえず、そのフローティングウインドウらしきものの一番上にあるButtonというものを左にあるウインドウにドラッグアンドドロップしてください。これを一番最初にする必要があります。これが、リターンキーを押したら押されたことになるボタンです。(これをデフォルトボタンという)そのボタンをダブルクリックしてください。右側のテキストボックスの中身をOKに変えてください。これで、アラートとしての役割は果たしますが、寂しいので、右側の方からStatic Textをドラッグアンドドロップしてみてください。それをダブルクリックして、テキストボックスの中身を適当に変えてください。もし、文字がはみ出したら、さっきドラッグアンドドロップしたStatic Textの枠の右下を動かしてください、サイズが変わります。それ以外のアイテムは、参考書なんかを参照してください。こんな感じで、アラートを作ります。それを保存して、CodeWarriorに戻ってください。(まあ、戻らなくてもいいや) 呼び出すソースコードはたったの一行です。以下にあげるのは、いろいろな種類のアラートの出し方です。 Alert( 128, NULL ); StopAlert( 128, NULL ); NoteAlert( 128, NULL ); CautionAlert( 128, NULL );128はさっき保存したリソースのID。NULLの部分には、フィルタ関数へのポインタとかいうものが入るはずなのですが、めったに使いません。特殊な処理をしないかぎりNULLで十分です。 上から順に、アイコンなしアラート、手のマークのアラート、吹き出しアラート、三角形に!アラートの順です。真ん中に表示するなどの場所設定はにせデスクトップみたいのがあったところでALRTメニューからAutoPosition...を選んで、ポップアップの内容を頑張って直訳して、どうにかやってください。(そんなには難しくないけど) ところで、アラートに表示するテキストの中身を変えたいこともあるはずです。例えば、保存していないファイルを閉じた時に『「ファイル名」は更新されています。保存しますか?』というようなものが出ますよね。リソースをのぞくと(ない場合もあるけど)ファイル名の部分は「^0」になっていたりすると思います。 この「^0」の部分をプログラム内部でかえることができます。 ParamText( str1, str2, str3, str4 );このstr*の部分にStr255型の文字列を入れると一つ目は「^0」、二つ目は「^1」、三つ目は「^2」、四つ目は「^3」と置き換えてくれます。「^*」の数が4つに満たない場合は、あまったところに「NULL」と入れれば使えます。また、4つ以上はできません。 |