投稿日 | 18/11/30-19:27 |
---|---|
投稿者 | shutzen |
参照先 |
こんにちは。
二択の質問をするダイアログボックスを作っています。1つのウィンドウ内にボタンを2個配置したものを別のメインウィンドウから呼び出し、ボタンがクリックされるとメインウィンドウの手順にそれぞれ分岐するものです。
これまでは、メインウィンドウ内に非表示のラベルを配置しておき、ボタンクリックの手順でこのラベルの内容を書き換え、メインウィンドウ種類の中で「ラベルの内容が変化した時」イベントで処理する方法で対応していましたが、ユーザー定義のイベントですっきり記述できないかと思いマニュアルをもとに試行錯誤していますが、よくわかりません。どなたかご教示いただければ幸いです。よろしくお願いいたします。
-----------------------------------------------------------------------------
メイン画面を表示する
待機する
メイン画面とは
ウィンドウを継承する
はじめの手順
初期化する
終わり
初期化する手順
ーー自動生成された手順です。ここにプログラムを書き加えても消える場合があります
この内容を「メイン画面」に変える
初期化開始する
初期化終了する
伝言窓を表示する
伝言窓の答えた時の手順は、答えた
終わり
答えた手順
「[この時の返答]」を報告する
終わり
終わり
伝言窓とは
ウィンドウを継承する
-返答番号:整数=0
//イベント定義
答えた時に発生する
【自分】が、答える手順
// イベント手順を発生させます
情報という返答イベント情報を作る
情報の返答は、1
情報で答えた時を発生させる
終わり
はじめの手順
初期化する
終わり
初期化する手順
ーー自動生成された手順です。ここにプログラムを書き加えても消える場合があります
このタスクバー表示を×に変える
この実質大きさを{370,141}に変える
この種類を「縁無し」に変える
この最大化ボタンを×に変える
この最小化ボタンを×に変える
このコントロールボックスを×に変える
この初期位置を「中央」に変える
この内容を「伝言窓」に変える
このフォーカス移動可能を×に変える
このフォントを「MS UI Gothic,12」に変える
初期化開始する
OKボタンというボタンを作る
その位置と大きさを{145,94,70,31}に変える
そのアクセスキー表示を×に変える
その内容を「OK」に変える
その移動順を2に変える
そのフォントを「MS UI Gothic,12」に変える
その背景色を「透明」に変える
キャンセルボタンというボタンを作る
その位置と大きさを{273,94,70,31}に変える
そのアクセスキー表示を×に変える
その内容を「キャンセル」に変える
その移動順を3に変える
そのフォントを「MS UI Gothic,12」に変える
その背景色を「透明」に変える
伝言ラベルというラベルを作る
その位置と大きさを{12,15,341,79}に変える
その内容を「ラベル1」に変える
そのフォントを「MS UI Gothic,12」に変える
その移動順を1に変える
その背景色を「透明」に変える
初期化終了する
終わり
了解ボタンがクリックされた時の手順は、答える
終わり
// イベント手順が発生したときに使用する付加情報
返答イベント情報とは
イベント情報を継承する
+返答
終わり
投稿日 | 19/02/19-04:39 |
---|---|
投稿者 | ゆうと |
参照先 |
こんにちは ゆうとです。
お返事遅くなりましたので解決済みかもしれませんが、
ユーザー定義イベントの定義方法は、挙げて頂いたプログラムで正しいです。
ただ、「了解ボタンがクリックされた時の手順は、答える」の場所を
種類定義の部分ではなく、「はじめの手順」に書く必要があります。
(エラーが出ないので、この点は直したいと思います)
-------------------------
伝言窓とは
はじめの手順
初期化する
OKボタンのクリックされた時の手順は、答える
終わり
終わり
-------------------------
このようにすることで、「答える」手順が呼び出され、イベントも捕まえられるようになるかと思います。
参考になれば幸いです。
投稿日 | 19/05/25-14:27 |
---|---|
投稿者 | shutzen |
参照先 |
こんにちは。返信いただいていたのに気づかず、すっかりお返事が遅くなってしまいました。
はじめの手順に書きましたら、うまく動作しました。はじめ「OKボタンが・・・」と書いていて、エラーが表示されてしまい悩んだのですが、普通のイベント手順の書き方とは別のものと気が付いて、「が」を「の」に変えると解決しました。
ありがとうございました。
- WebForum -