2017-02-15 3 views
1

'mapview'タイプのコントロールをプロジェクトに追加しようとしています。 イベントが発生したときにアニメーション化できる境界線とアイコン/イメージを持つ、クリック可能な透明な四角形の「メインマップ」イメージが必要です。クリック可能な四角形とアニメーションアイコンを使用したピクチャボックス/マップビューのタイプコントロールの作成

C#でWindowsフォームを使用してこれを達成する最良の方法は何ですか?

私が最初に考えたのは、その上に他の項目とピクチャボックスを使用していたが、それは、これを達成することができるだろう任意のライブラリか何かがそこにあります。私は、など

透明性の問題に実行するのでしょうか?本当に

+1

私は通常のダブルバッファのPanelサブクラスまたはPictureBoxサブクラスと、移動可能なLabelサブクラスを使用します。ラベルはPictureBoxの__not__ '上に置いてください。本当に__nested__です。 (lbl.Parent = pbox)。そうすれば、透明度はうまくいきます。これは、長方形が__not overlapping__であることを前提としています。 - 「アニメーション時のイベント」の部分が分かりやすくなると、コードの残りの部分が簡単になります。 – TaW

+0

ありがとう!それは素晴らしい考えです、私は今試してみましょう:) –

+0

それは完全に働いた。私はそれを答えとして書いてください。私はそれを受け入れます。 @TaW –

答えて

1

ライブラリは必要ない、:

doublebuffered私は定期的にのために行くだろう長方形FPR 可動LabelまたはPanelサブクラスと一緒にボード/マップのPanelサブクラスあるいはPictureBoxサブクラス/項目。

重要LabelsはちょうどPictureBox本当にネストされたの「トップに置く」ではないをしていることを確認してください! (lbl.Parent = pbox)。そして、透明性がうまく動作します。.. PictueBox以来

はそれで制御にあなたがコードを必要とし、「コンテナ」ではありません。しかし、おそらく動的に作成したいので、これは問題ではありません。

これは、長方形がと重複していないと仮定して、!オーバーラップコントロールの場合、winformsの透明度は機能しません。

「イベントアニメーション」部分あなたは「アニメーション」、警告の言葉に言及ので、コードの残りの部分は...

になります簡単に明確にあなたが理解:に特にREPONSEで簡単なアニメーションを、ユーザーアクションは実行可能です。より洗練されたアニメーションのためには、winformsの限界に遭遇するかもしれません。

関連する問題