PictureBoxとImageがPictureBox1.Image
というプロパティにあります。
画像の周りにはどのように枠線を配置しますか?PictureBoxコントロールに色付きの枠線を作成するにはどうすればよいですか?
答えて
PictureBox
の枠のサイズと色を設定することはできません。
しかし、それを達成するために少しトリックを行うことができます。
画像をBackgroundImage
プロパティに設定します。
BackgroundImageLayout
をCenter
に設定します。
境界線にする色にBackColor
プロパティを変更します。
PictureBox
のサイズを十分に大きくして、後ろの色を表示するようにしました。これは視覚的に境界線のように機能します。
Padding
プロパティを使用して、最後の手順を実行することもできます。
希望に役立ちます。
+1、簡単で効果的な方法 –
このメソッドには、複雑なレイアウトで成功せずに使用しようとするドローバックがいくつかあり、最も効果的な 'PictureBox'の' OnPaint() 'メソッドをオーバーライドしています。 – Lankymart
これはまた、透明な画像を使用するときに問題があります。 –
現在地から「DrawBorder」メソッドを使用してカスタムの境界線をペイントし、あなたの「のSystem.Windows.Formsに渡すSystem.Windows.Forms.ControlPaint
クラスを使用し、System.Windows.Forms.PictureBox
から継承し、PictureBox
クラスOnPaint
メソッドをオーバーライドすることで、独自のPictureBoxを作成することができます。 PaintEventArgs 'を' OnPaint 'メソッドから削除します。
このようなものです。
using System.Windows.Forms;
using System.Drawing;
public class CustomPictureBox : PictureBox
{
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
ControlPaint.DrawBorder(e.Graphics, e.ClipRectangle, Color.Red, ButtonBorderStyle.Solid);
}
}
これは、あなたが、私はより徹底することはできません申し訳ありませんが、始めるためだけの簡単な例(未テスト)です。
もしあなたがオフになっているのであれば、PictureBoxコントロールの 'Paint'イベントハンドラから' ControlPaint.DrawBorder'を呼び出すことができます。 – Lankymart
これはいつも私がそのために使用するものとなっている:
境界線の色を変更するには、お使いのPictureBoxコントロールのPaintイベントハンドラからこれを呼び出す:
private void pictureBox1_Paint_1(object sender, PaintEventArgs e)
{
ControlPaint.DrawBorder(e.Graphics, pictureBox1.ClientRectangle, Color.Red, ButtonBorderStyle.Solid);
}
動的境界線の色を変更するには、たとえばマウスイベントから、ピクチャボックスのTagプロパティを使用して色を保存し、ピクチャボックスのClickイベントを調整してそこから取得します。たとえば:
if (pictureBox1.Tag == null) { pictureBox1.Tag = Color.Red; } //Sets a default color
ControlPaint.DrawBorder(e.Graphics, pictureBox1.ClientRectangle, (Color)pictureBox1.Tag, ButtonBorderStyle.Solid);
のPictureBox Clickイベントは、その後、このような何かを行くだろう:あなたが先頭にusing System.Drawing;
をする必要がありますし、最後にpictureBox1.Refresh()
を呼び出すことを忘れないでください
private void pictureBox1_Click(object sender, EventArgs e)
{
if ((Color)pictureBox1.Tag == Color.Red) { pictureBox1.Tag = Color.Blue; }
else {pictureBox1.Tag = Color.Red; }
pictureBox1.Refresh();
}
。楽しい!
- 1. cardviewに色付きの枠線を追加するにはどうすればよいですか?
- 2. Internet ExplorerでImageMapコントロールの青色の枠線を削除するにはどうすればよいですか?
- 3. Pictureboxの枠線を取り除くにはどうすればいいですか?
- 4. Google Chromeのドロップダウンから黄色の枠線を削除するにはどうすればよいですか?
- 5. CSSを使用して枠線レイアウトを作成するにはどうすればよいですか?
- 6. CSSを使用して透明な枠線を作成するにはどうすればよいですか?
- 7. グループボックスの枠線の色を変更するにはどうすればよいですか?
- 8. CSSで枠線付きのタブを作成する方法は?
- 9. Jquery Mobile動的サムネイルリスト - 枠線を作成するにはどうすればいいですか?
- 10. javafx&fxml:GUIの枠やラベルに枠線を適用するにはどうすればいいですか?
- 11. CSSの枠線の上部にのみ角を丸くするにはどうすればよいですか?
- 12. 幅がパーセンテージのdivに1ピクセルの枠線を追加するにはどうすればよいですか?
- 13. カスタム日付を作成するにはどうすればよいですか?
- 14. 図形をFlashの枠線にクリップするにはどうすればよいですか?
- 15. WPFで角を丸くした破線の枠線を作成するにはどうすればよいですか?
- 16. PictureBoxコントロールでスクロールバーを表示するにはどうすればよいですか?
- 17. C#で枠線のないContextMenuを作成するには?
- 18. デザイナで編集できるIPAddressプロパティでコントロールを作成するにはどうすればよいですか?
- 19. オブジェクトにFlashでフォーカスがあるとき、黄色の枠線を削除するにはどうすればよいですか?
- 20. VS 2010で青い枠線を変更するにはどうすればよいですか?
- 21. ビットマップの周りに白い枠線を作成するには?
- 22. カスタムボタンの枠線で「ストレッチマーク」を削除するにはどうすればよいですか?
- 23. デザインビュー/タブでWPFウィンドウの枠線を削除するにはどうすればよいですか?
- 24. JTableの列見出しの枠線を削除するにはどうすればよいですか?
- 25. カスタムCProgressCtrlの周りの枠線を削除するにはどうすればよいですか?
- 26. Googleカスタム検索スニペットのホバーの枠線を削除するにはどうすればよいですか?
- 27. グループ化されたテーブルビューの背景色のように、テクスチャ付きの背景(イメージパレット)カラーを作成するにはどうすればよいですか?
- 28. Eclipseのオートコンプリートのようなコントロールを作成するにはどうすればよいですか?
- 29. デルファイでパネルの枠線を完全に削除するにはどうすればいいですか?
- 30. コントロールを編集するには青い枠線を設定するにはどうすればよいですか?
明確にしてください。 – SLaks
あなたは何を求めているのか理解していますか? – jcolebrand