1

多分私は何かが欠けているかもしれませんが、ピクチャボックスの背景を透明に設定すると、実際にはフォームの背景と同じ色に設定されるだけですか?

私がやろうとしているのは、これを利用するためにアニメーションを描くことです。バウンドするボールです。これをフォームにペイントし、それを額縁に重ねます。最終結果は、額縁内で弾むボールになるはずです。額縁にはまっすぐな縁がないため、1 つの額縁に 4 つの額縁を配置することはできません。ボールがフレームの後ろに消えて色が変わり、魔法のように跳ね返る必要があります。

私が試してみました:

1.画像ボックスの背景をピンクに設定してから、同じピンクをキーアウトします。これにより、画像ボックスの背後にあるものも含め、基本的にすべてが切り取られます 2.画像ボックスを透明に設定すると、画像ボックスの背景が同じように表示されますフォームの背景としての色。3.画像を四角形でペイントしようとしましたが、これは画像ボックスに描画するのと同じ効果がありました。

他に試してみることができる方法があるかどうか、または透明性をサポートするカスタム コントロールまたはライブラリを誰かが作成したかどうか疑問に思っています。

4

3 に答える 3

0

うーん... Picturebox を使用して透明な画像を取得したい場合は、picturebox の背景を「ボール」として設定してみてください (おそらく画像エディターが必要です)。ピクチャボックスを透明に設定します。私(VS Express 2010)で一度はうまくいきました。

于 2013-02-21T09:10:23.263 に答える
0

さらに詳細な調査を行った後、 PaintEventArgs と me.paint を使用して両方の画像をフォームに描画することでこれを解決しました

以下を使用して各画像を透明にします。

Dim TestImage as Bitmap
TestImage.MakeTransparent(<Transparency Color>)

お二方ともご回答ありがとうございます。

于 2012-12-06T09:52:51.583 に答える
0

背景画像が設定された Panel を使用してみてください。それの訳は; あなたが言ったように:透明オプションは親の背景色のみを取ります。

于 2012-11-26T20:56:46.833 に答える