私は他のPictureBox(ピン)を追加したPictureBox(マップ)を持っています。 (winformsアプリケーションで) ピンバックカラーを透明に設定しました。すべてのピンの親はマップです。 問題は、ピンの透明度が正しく機能しないことです。すべてのピンにマップの背景があります。 100以上のピンがあり、ピンが近くにある場合、マップの背景がピンの背景と異なる場合、ピンのコーナーを見ることができます。 PictureBoxの代わりにパネルとラベルを使ってみましたが、成功しませんでした。 問題の解決方法を教えてください。 ありがとうございます。PictureBox透明度が正しく動作しない
答えて
まあ、duh。 WindowsはPhotoshopではありません。またはフラッシュ。またはSilverlight。またはWPF。
Windowsでは、特定の条件下で透過を許可する非常に単純なレイヤーシステムを使用していますが、本格的なレイヤードシステムよりも実際には回避策があります。基本的には、イメージを透過的にレンダリングする場合は、まずコントロールの下にそのレンダリングを依頼し、それをレンダリングします。
これは、階層全体が機能するため、デフォルトで透過性は親子関係でのみ機能することを意味します。子は親をその一部として簡単にレンダリングでき、独自の背景特定の状況下で。だからあなたのピンをあなたの背景の子供にすると、透明は期待どおりに働くでしょう。
しかし、PictureBox
は実際には写真を表示するためにのみ設計されています。何百ものピンを使ってマップをレンダリングする必要がある場合は、ほとんどの場合、Windowsコントロールを使用してマップを作成することは望ましくありません。背景とピンのレンダリングを処理するオーナー描画コントロールは、おそらくよりうまくいくでしょう。あなたのユースケースではそれほど難しい場合は、WPFを見たいと思うかもしれません - あなたは簡単にWinformsコントロールの中にWPFコントロールを埋め込むことができます。そして、WPFは、あなたがやろうとしているものに対してもっと良いツールを提供します。
ここで最も重要な点は、IMO:「コントロールを乱用しないでください...自分で描く」。 WinFormsではTrueよりはるかに頻繁に。人々がそれを思わせるようにはそれほど恐ろしいことではありません。 – DonBoitnott
ありがとうございました。私はすでにアプリケーションでWPFコントロールを使用していましたが、私はbingマップを置いていましたが、財政的理由からbingマップをあきらめなければなりませんでした。しかし、私はWPFを使ってそのマップを実行しようとし、それをbingマップの代わりに配置します。私はこのオプションについて考えていませんでした:(私はpictureboxの問題を解決できると思っていましたが、画像での作業経験はあまりありませんでした。 – turdeanu
- 1. 透明なdivが正しく動作しない
- 2. Velocity.js不透明度が正しく機能していない
- 3. Libgdxローディングブレンダーモデル、透明度が正しくない
- 4. C#Alpha Blend透明なPictureBox
- 5. IE8不透明度が動作しない
- 6. IE8の不透明度が正しくありません
- 7. BMPの透明なカラーキーが正しく表示されない
- 8. :DD_belated透明な.PNG修正(助け?)の後、IE6でホバーが動作しない
- 9. iPhoneの明るさプライベートAPIが正しく動作しない
- 10. Androidカスタムビューで透明/アルファが正しく処理されない
- 11. 不透明度のCSSトランジションが動作しません
- 12. 移動のPictureBox透明な背景の問題
- 13. 透明キャンバスビューでは消しゴムが動作しないandroid
- 14. WinFormsは透明なクリア可能なpictureBoxオーバーレイを作成します
- 15. 透明度が不透明度が1未満の場合は透明にならない
- 16. 透明な背景色が動作しない
- 17. IE6透明な背景色が動作しない
- 18. Android:透明なアクティビティが動作しない
- 19. ステートプロバイダで角度$ウォッチが正しく動作しない
- 20. DecimalFormatの精度が正しく動作しない
- 21. 角度4のdivが正しく動作しない
- 22. Overlapped PictureBoxのC#での透明度の問題
- 23. 色を継承しますが、不透明度/透明度をオーバーライドします
- 24. ブートストラップ/ jQueryフェード不透明遷移が動作しない
- 25. Javascript Internet Explorerで不透明スライダが動作しない
- 26. CSS3不透明アニメーションが 'overflow:hidden'で動作しない
- 27. Silverlight不透明アニメーションがプログラムで動作しない
- 28. C#コンソールの不透明度/透明度
- 29. ドロップダウンメニューが正しく動作しない
- 30. @DateTimeFormatが正しく動作しない
_a他のPictureBoxes_を追加したところでPictureBox(map)を実際に__nest__しましたか?あなたはコード内でこれを行うことを__need__: 'pbPin01.Parent = pbMap;'など。100ピンについては、それらをペイントすることを検討します。彼らはインタラクティブにする必要がありますか? – TaW
レイヤリングをサポートする透明な 'PictureBox'が必要な場合は、この投稿が参考になるかもしれません:[C#で透明なレイヤーを作る方法(http://stackoverflow.com/a/36102074/3110834)。しかし、何百ものピンについては、GDI +を使ってレンダリングすることをお勧めします。あなたは単にそれらのためのテストをヒットし、それらをインタラクティブにすることもできます。 –
あなたは_Everyピンの親をmap_と書いています。本当の透明性があればうまくいくでしょう。 PictureBoxは、Panelのようなコンテナとは異なり、コントロールを__movingすると__not__はParent.Chil関係を作成します。あなたはcode__でそれを行う必要があります! – TaW