過去の桐井戸端BBS (桐ver.8)
9601 2個目のウィンドウを作ったとたんに前のウィンドウを消したい ふぃるど 2001/02/02-11:04
ここの所Ver8sp6でイベントを使った処理を試しているのですが
例えばメニュー画面の Aボタンで作った窓を Bボタンで2個目の窓を作ったとたんに、
Aボタンで作った窓を画面上から消滅させたいと思うのですが

ウインド作成 ハンドル=&A窓  で変数にしまっておき

次の窓を作ったときに

ウインド終了 &A窓    とやれば良いのだと思うのですが

フォーム開始イベントの辺りに記載してもうまくいきませんでA窓が開きっぱなしで困ってます。

そもそも考え方が違ってるのでしょうか?
ウインドウ終了は
マニュアルには 自身のフォームに対しては、常に不可  とあるだけで..
B窓を開けたときにA窓に対しては使用フォームも変わっているからOKだと思うんですけど...
書く場所が悪いのかとも思うのですが。
簡単でも結構ですからアドバイスいただけましたらありがたいのですがよろしくお願いいたします。

9604 Re:ウインドウ終了コマンド 宮城 2001/02/02-16:04
記事番号9601へのコメント
>フォーム開始イベントの辺りに記載してもうまくいきませんで

Bボタンマウス左クリックでうまくいきませんか?

9615 Re:ウインドウ終了コマンド ふぃるど 2001/02/03-09:45
記事番号9604へのコメント
宮城さん、おはようございます。
どうも有り難うございます。
今日もう一度試してみます。
マウスイベントの処に
手続き実行
機能パラメーターリスト  の欄に手続き名を書いております。

>Bボタンマウス左クリックでうまくいきませんか?
と言うことは基本的な考え方は間違っていないようですね。
はい、もう一度やってみます。
どうも有り難うございました。

9617 Re:ウインドウ終了コマンド hidetake 2001/02/03-10:30
記事番号9601へのコメント
AフォームからBフォームの開き方によっては
Bを終了したときの戻り場所が無くなる関係で、
Bでウィンドウ終了を発行しても、
即座にAが終了されない場合もあります。
その場合は、Bが終了するとAに戻り、
その時点でAのウィンドウも閉じられると思います。
と言うことで、Bを開いた時点でAを見せたくなければ、
Bのウィンドウ終了の前に、ウィンドウ位置で
Aを非表示にしておけばよいと思います。

AからBの開き方として、ボタンの「ファイル」の「開く」で開いている場合、
そのままウィンドウ終了も効くと思いますし、この場合、B側で制御しなくても、
A側でBを開いた後、自分自身を閉じれば良いことでしょうし・・・

AからBを開く場合、モーダルフォームなどで呼びだした場合は、
AはBが閉じるのを待ち続ける事になると思います。

9621 Re:ウインドウ終了コマンド 佐田 守弘 2001/02/03-11:19
記事番号9601へのコメント
ふぃるどさん
基本的には、メニュー画面からAボタンでAのフォームを開いた後は、
一度Aフォームを閉じてからメニューに戻り、
次いでBボタンでBフォームを開く方法にすべきだと思うのですが。
つまり、行った道を戻ってメニューから別の道を選ぶ考え方です。
そのようにすれば、AフォームとBフォームが同時に表示される事はないはずです。
この方法は、イベントを使わずに、機能名の「開く」「閉じる」だけでも可能です。
ただし、メニューがポップアップウィンドウでない事が前提です。

もちろん、AもBも両方表示しておく事も可能ではありますが、質問の様な事が発生すると思います。
なお、多数のフォームウィンドウを同時に表示しておき、目的のフォームだけを表示させたいのであれば、
ウィンドウは原則非表示とし、目的ウィンドウ(フォーカスを得たウィンドウ)のみを
表示させる様にイベントを組む事になると思います。

佐田守弘(KS-00119)
9623 Re:ウインドウ終了コマンド ふぃるど 2001/02/03-12:27
記事番号9621へのコメント
佐田さん、コメントどうも有り難うございます。
>基本的には、メニュー画面からAボタンでAのフォームを開いた後は、一度Aフ
>ォームを閉じてからメニューに戻り、次いでBボタンでBフォームを開く方法に
>すべきだと思うのですが。
はい、その通りだと私も思い、いつもはそうしているのですが、今回はメインメニューの
フォームからボタン操作でサブフォームの窓を開き、タイマーイベントを使い
LANで繋がっている他のコンピューターの共有ドライブにファイルの到着を定期的に
チェックに行くプログラムです。
ファイルは1個到着すればその日のファイルチェック作業は終わりますので、
その後は窓(フォーム)を閉じれば無用なLANアクセスが無くなるので、
そのように操作していただければいいのですが、不特定多数の方が使うシステムですので、
中には忘れる方もいらっしゃいますのでファイル到着後の一連の操作をしたら、
自動的に閉め忘れた窓も閉めてやろうかと思ったわけです。

>そのようにすれば、AフォームとBフォームが同時に表示される事はないはずで
>す。

Aフォームでファイルの到着を待ちながら、Bフォームは使いませんが、Cフォームで
日常作業を行っているわけです。
ファイルが到着したら、Bフォームを使って当日のマスタ更新作業を行います。
そのときに閉め忘れていたらAフォームを閉じてしまおうと考えてます。

  でも、本当に桐は良くできてると思います。
  タイマーイベント使ったアプリがいとも簡単に出来てしまいます。
  お陰で、余分な親切心でついいろんな事を考えてしまうのがいけないのかも
  しれません。どうも有り難うございます。
  今後ともよろしくお願いいたします。


9624 Re:ウインドウ終了コマンド ふぃるど 2001/02/03-12:45
記事番号9617へのコメント
hidetakeさん、コメント有り難うございます。
>AフォームからBフォームの開き方によっては
>Bを終了したときの戻り場所が無くなる関係で、
>Bでウィンドウ終了を発行しても、即座にAが

そうかもしれません、戻り場所がどう成ってるかは全然考えてませんでした
Aフォームから、Bフォームを開いて、更にAフォームからCフォームを開いた
とたんに、Bフォームを閉じたいのですが戻り場所は確かに無いことになるかもしれませんね。
その辺を整理してみます。

>ドウ位置でAを非表示にしておけばよいと思い
>ます。

閉じると言う事でタイマイベントを止めたいので非表示は意味がないのです。

>AからBの開き方として、ボタンの「ファイル」
>の「開く」で開いている場合、そのままウィン

ボタンに手続き実行として
イベント処理ファイルにウインド作成で書いております。

>AからBを開く場合、モーダルフォームなどで
>呼びだした場合は、AはBが閉じるのを待ち続
>ける事になると思います。

確かにフォーム呼び出しでは待ち続けてしまいBを開いたままCフォームを開くことは出来ませんでした。

やはり、帰りルートを考えていないと言うのが原因のような気がしました
もう一度整理して考えてみます。
アドバイスどうも有り難うございました。
今後ともよろしくお願いいたします。


9625 Re:ウインドウ終了コマンド hidetake 2001/02/03-13:01
記事番号9624へのコメント
>閉じると言う事でタイマイベントを止めたいので非表示は意味がないのです。

オブジェクト操作で止めれば済むと思いますが・・・

9639 Re:ウインドウ終了コマンド ふぃるど 2001/02/04-20:45
記事番号9625へのコメント
hidetakeさん、こんばんわ。

>オブジェクト操作で止めれば済むと思いますが・・・
これですかぁ、いまいちマニュアルを読んでも理解できないので
使ったこと有りません。
もうちょっと勉強してみます。
マニュアルにいるとこのコマンドは何でも出来そうな気がしますが難しそうで...

     がんばってみます、では

9644 Re:ウインドウ終了コマンド hidetake 2001/02/05-09:27
記事番号9639へのコメント
>がんばってみます、では

「オブジェクトのリスト」で「イベントタブ」の「タイマー1」の項目を見ると、

オブジェクト操作 ハンドル= @フォーム.タイマー1 = "1"

と表示されるはずです。タイマー1のチェックボタンを外すと "0" にかわります。
タイマーを禁止する場合はハンドルを指定して"0" を指定してみて下さい。

オブジェクト操作 ハンドル= @フォーム.タイマー1 = "0"

ウィンドウ終了の前に「非表示」をいれ、その前にタイマーを禁止する・・・

と言う感じになるでしょうか、いろいろトライしてみて下さい! (カナの半角全角には注意)

9709 Re:ウインドウ終了コマンド ふぃるど 2001/02/08-12:21
記事番号9644へのコメント
hidetakeさん、こんにちわ
昨日まで金沢に出張で遅くなりましてすいません。

>「オブジェクトのリスト」で「イベントタブ」
>の「タイマー1」の項目を見ると、
>オブジェクト操作 ハンドル= @フォーム.タイマー1 = "1"

このあたり、探ってみます。
桐はケースバイケースでいろんな設定窓の表示が出ますので面食らってます
マウスカーソルの位置とかでも違った窓が出ますし
でも、本当に楽しいソフトで気に入っております。

>と言う感じになるでしょうか、いろいろトライ
>してみて下さい! (カナの半角全角には注意)

全角半角は私は面食らっております。
記号や符号は半角、漢字、ひらがなのみ全角を使うようにしております。

    また何かございましたらアドバイスよろしくお願いいたします。
          有り難うございました。

戻る