タイトル : pictureBoxの重なり 投稿日 : 2008/01/05(Sat) 17:38 投稿者 : DOON
DOONです。いつもお世話になっています。 VB.net 2005 WindowsXPで、開発をしています。 pictureboxにbmpもしくはjpgを表示しています。(pic1) そのbmpのいろんな位置に○を書くようなプログラムを作成しています。 ボタンを押下するたびに、新しいピクチャーボックスをnewしています。 _pic = new PictureBox() この新しいピクチャーボックスにNewしたBitMapを設定します。 _bmp = new BitMap(20 , 20) _pic.Image = _picbmp(_count) そのNewしたBitMapから以下のソースで○を書いています。 dim gra as Graphics = Graphics.FromImage(_bmp) gra.DrawEllipse(BPen, 0, 0, 17, 17) その新しいピクチャーボックスをドラッグドロップして、 ○をつけたい位置に置くというプログラムにしています。 元になるbmpに対してnewしたピクチャーボックスをAddしています。 ソースは以下です。 pic1.Controls.Add(_pic) これで、透過されて、予想通りだったのですが。 ○どおしが近づくと、○同士の重なりが描画されません。 どうやったらいいのでしょうか? 一応、上記とはまったく違うやり方として、 newしたPictureBoxのRegionをくりぬきの円にするというやり方で 何とかなるのは見つけたのですが、この方法では納得がいかないのです。 以上、よろしくお願いします。 |