C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

ToolTipがShowDialogすると消える?


(過去ログ 5 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■5538 / inTopicNo.1)  ToolTipがShowDialogすると消える?
  
□投稿者/ kubot 二等兵(1回)-(2006/08/16(Wed) 09:20:12)

分類:[C#] 


分類:[C#] 

子画面であるForm(FormChild)のインスタンスを親画面で保持した状態で、ShowDialogでFormChildを表示すると、初回起動時はFormChildに乗っている各コントロールのToolTipは表示されるのですが、一旦FormChildを閉じてから、FormChildインスタンスをnewし直さずに再度ShowDialogすると、ToolTipが表示されなくなります。
また、ToolTipクラスのRemoveAll()を行ってからSetToolTipし直すと、再度表示できる状態になるようなのですが、その原因と、他の対策があるかどうかご存知の方がおられましたら、ご教授願います。

0
引用返信 編集キー/
■5544 / inTopicNo.2)  Re[1]: ToolTipがShowDialogすると消える?
□投稿者/ 渋木宏明(ひどり) 二等兵(3回)-(2006/08/16(Wed) 10:55:06)
渋木宏明(ひどり) さんの Web サイト

分類:[C#] 

>その原因と、他の対策があるかどうかご存知の方がおられましたら、ご教授願います。

原因は簡単です。
仕様です。

ShowDialog() する場合は、毎回 Form の新規インスタンスを作成するのが定石です。

原因が分かれば対策も簡単です。
毎回 Form の新規インスタンスを作成するようにしてください。


0
引用返信 編集キー/
■5575 / inTopicNo.3)  Re[2]: ToolTipがShowDialogすると消える?
□投稿者/ kubot 二等兵(2回)-(2006/08/17(Thu) 08:58:48)

分類:[C#] 

ご回答ありがとうございます。

> 仕様です。
仕様というよりも、むしろ片手落ちのバグのようなイメージでしょうか。
あるべき動作ではないような気がしますね。

> ShowDialog() する場合は、毎回 Form の新規インスタンスを作成するのが定石です。
> 毎回 Form の新規インスタンスを作成するようにしてください。
毎回 Form の新規インスタンスを作成すれば良いのはわかった上で、そうしたくないのが現状(既存のクラス構成上編集規模が大きい)なので、newする以外の方法で解決したいと思っております。
上記から、ToolTipの動作を内部的にセットし直すなどして対応をしたいのでToolTipが表示されなくなる原因とセットし直すべきものが分かればと思っております。最悪、ToolTipクラスのRemoveAll()を行ってからSetToolTipし直す方法での対応を考えているのですが、他にもっとスマートな方法は無いのでしょうか?


0
引用返信 編集キー/
■5576 / inTopicNo.4)  Re[3]: ToolTipがShowDialogすると消える?
□投稿者/ まどか 中佐(211回)-(2006/08/17(Thu) 09:10:42)

分類:[C#] 

>>仕様です。
> 仕様というよりも、むしろ片手落ちのバグのようなイメージでしょうか。
> あるべき動作ではないような気がしますね。

ToolTip"リソース"ですので破棄されて当然だと思います。

> 毎回 Form の新規インスタンスを作成すれば良いのはわかった上で、そうしたくないのが現状(既存のクラス構成上編集規模が大きい)なので、newする以外の方法で解決したいと思っております。
> 他にもっとスマートな方法は無いのでしょうか?

上記とあわせてCloseとHideを比較するとよいかと思います。

0
引用返信 編集キー/
■5613 / inTopicNo.5)  Re[4]: ToolTipがShowDialogすると消える?
□投稿者/ kubot 二等兵(3回)-(2006/08/18(Fri) 10:01:34)

分類:[C#] 

今回は修正規模は多きいですが、ある意味一番スマートな方法のようなので、リスク込みで”毎回 Form の新規インスタンスを作成する”方法で統一する事にします。

>ToolTip"リソース"ですので破棄されて当然だと思います。
>上記とあわせてCloseとHideを比較するとよいかと思います。
私の勉強不足なトコロが多いので、上記調べなおします。

以上、ご意見、ありがとうございました。

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -