|
分類:[C#]
分類:[C#]
先日、MDIフォームについてご質問させていただきましたが、新たに 別のところで、問題が発生したため、別スレにて失礼します。
C#で、クイズ形式のゲーム?みたいなものを作ろうかと思っているの ですが、あるフォーム上に様々なコントロールを配置しております。 そのフォームの前面に問題が正解なら『○』、不正解なら『X』と 書かれた画像を出したいと考えています。
ですが、PictureBox等では、配置したコントロールが隠れてしまい、 見た目的にも変な感じになってしまいます。透明色などを指定して、 その色で塗られた部分のみ、透明にして表示のようなことはできない でしょうか?画像の上に画像を置く場合ならできるようなのですが、 他のコントロールの上に表示となると厳しいようで。。
現状、1つの方法として、小さなフォームを作成し、TopMostプロパティを Trueにしてあります。そのフォーム全体に『○』または『×』の画像を BackgroundImageプロパティにて表示させ、TransparencyKeyで透明に したい色を指定し、表現しています。
が、これには欠点がいくつか存在します。1つは、様々なコントロールが 配置されているフォームを移動してしまうと、『○』などの画像は連動して 動いてくれません。もう1つは、タスクバーに『○』フォームとして、 選べてしまう点がどうにも個人的に納得できません。
C#で、こういったことを行うこと自体間違っているのかもしれませんが、 どなたか良い知恵など御座いましたら、アドバイスいただけないでしょうか? よろしくお願い致します。
|