DOBON.NET DOBON.NETプログラミング掲示板過去ログ

パネル透明化について(ちょっと違うかも)

環境/言語:[OS:WindowsXP 使用言語:C# .NET Framework ver1.1]
分類:[.NET]

はじめまして
いつも参考にさせて頂いています。

自分で調べてみたのですが解決出来なかったのでご教授下さい。

http://dobon.net/cgi-bin/up/files/006.zip
上記ファイルの様にラベルを作成してドラッグで移動するプログラムを作っています。
そこにパネルを作成してラベルを複数枚addすることでグループとして
移動するようにしているのですが複数のグループを作成した場合
他グループの上を移動した時、ラベルが無い部分も
パネルが存在する為(現在は便宜上青色です)下のグループを隠してしまいます。
下のグループを隠さずにラベルを纏める方法はあるのでしょうか?

パネルの色を背景色に指定した所で、パネル自体は存在するので同じ事ですし
フォームに透過色の指定をした場合
その色の部分にフォームが存在しないので突き抜けてしまいます。

また、こちらの「.NET プログラミング Tips」内でフォームの形を変形させる方法を
見つけたので、その方法を応用すれば可能かと思いましたが
その方法だと複数枚のラベルを追加した際に少しづつ位置をずらす為
複雑な形になってしまい手に負えない処理になってしまいます。

状況説明が判りづらいかと思いますが、
よろしくお願い致します。
こんにちは。antです。

> 他グループの上を移動した時、ラベルが無い部分も
> パネルが存在する為(現在は便宜上青色です)下のグループを隠してしまいます。
> 下のグループを隠さずにラベルを纏める方法はあるのでしょうか?


何らかのコントロールの上に追加する以上その背景を透過
させる必要があるので、大変だと思います。

そこで、適当なクラスでグループを作って、仮想的な
パネルの上でコントロールを全て同時に動かしていきます。
こんなイメージです。

http://dobon.net/cgi-bin/up/files/007.zip

今回はかなり手抜きですが、イメージはわかっていただけると
思います。
>antさん

ありがとうございます、このイメージです。

実体の無いコントロールでグループ化。
全然思いつきませんでした。
発想の転換の修行をしなければいけませんね

このサンプルを参考に作成していきたいと思います。
ありがとうございました
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板