C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[8]: コントロールの描画をBitmapよりも下にしたい


(過去ログ 27 を表示中)

[トピック内 11 記事 (1 - 11 表示)]  << 0 >>

■12208 / inTopicNo.1)  コントロールの描画をBitmapよりも下にしたい
  
□投稿者/ デルタ (1回)-(2008/01/04(Fri) 23:23:42)

分類:[C#] 

2008/01/05(Sat) 09:19:31 編集(投稿者)
2008/01/05(Sat) 09:19:28 編集(投稿者)

ボタンなどのコントロールを表示させ、Bitmapの画像をOnPaintで描画するのですが、ボタンが上に描画され、画像が下になってしまいます。
これをボタンを下に描画し、その上にBitmap画像を描画するようにすることはできるのでしょうか?
使用しているものは、Visual C#になります。

引用返信 編集キー/
■12211 / inTopicNo.2)  Re[1]: コントロールの描画をBitmapよりも下にしたい
□投稿者/ やじゅ (61回)-(2008/01/05(Sat) 01:55:58)
やじゅ さんの Web サイト
No12208 (デルタ さん) に返信
> ボタンなどのコントロールを表示させ、Bitmapの画像をOnPaintで描画するのですが、ボタンが上に描画され、画像が下になってしまいます。
> これをボタンを下に描画し、その上にBitmap画像を描画するようにすることはできるのでしょうか?
>

Bitmapの画像を、Pictureコントロールなのかフォームに直に表示しているのかによりますが、
Pictureコントロールなら、最前面へ移動すれば出来るかも・・・試してないけど

Control.BringToFront メソッド
コントロールを z オーダーの最前面へ移動します。
http://msdn2.microsoft.com/ja-jp/library/system.windows.forms.control.bringtofront.aspx

Control.SendToBack メソッド
コントロールを z オーダーの背面に移動します。
http://msdn2.microsoft.com/ja-jp/library/system.windows.forms.control.sendtoback.aspx
引用返信 編集キー/
■12216 / inTopicNo.3)  Re[2]: コントロールの描画をBitmapよりも下にしたい
□投稿者/ デルタ (3回)-(2008/01/05(Sat) 09:18:02)
No12211 (やじゅ さん) に返信

> Bitmapの画像を、Pictureコントロールなのかフォームに直に表示しているのかによりますが、
> Pictureコントロールなら、最前面へ移動すれば出来るかも・・・試してないけど

> Control.SendToBack メソッド
> コントロールを z オーダーの背面に移動します。
> http://msdn2.microsoft.com/ja-jp/library/system.windows.forms.control.sendtoback.aspx

お答えいただいてありがとうございます。
Bitmapの画像はフォームに直接表示しています。
SendToBack();を試してみましたが、無理でした。
やはりフォームに直接描画したものはコントロールの上にならないでしょうか。
引用返信 編集キー/
■12220 / inTopicNo.4)  Re[3]: コントロールの描画をBitmapよりも下にしたい
□投稿者/ Tom Yama (40回)-(2008/01/05(Sat) 12:05:48)
No12216 (デルタ さん) に返信
> やはりフォームに直接描画したものはコントロールの上にならないでしょうか。
はい。
引用返信 編集キー/
■12264 / inTopicNo.5)  Re[3]: コントロールの描画をBitmapよりも下にしたい
□投稿者/ やじゅ (6回)-(2008/01/07(Mon) 00:39:17)
やじゅ さんの Web サイト
No12216 (デルタ さん) に返信
>
> やはりフォームに直接描画したものはコントロールの上にならないでしょうか。

そのようにしたい理由は何故でしょうか?
コントロールより上にするってことは、コントロールが見えなくなるので
コントロールを非表示にすればいいと思いますが

引用返信 編集キー/
■12307 / inTopicNo.6)  Re[4]: コントロールの描画をBitmapよりも下にしたい
□投稿者/ デルタ (4回)-(2008/01/07(Mon) 21:19:56)
No12264 (やじゅ さん) に返信
> ■No12216 (デルタ さん) に返信
> >
>>やはりフォームに直接描画したものはコントロールの上にならないでしょうか。
>
> そのようにしたい理由は何故でしょうか?
> コントロールより上にするってことは、コントロールが見えなくなるので
> コントロールを非表示にすればいいと思いますが
>

はい、Bitmapが透過しているので、上に載せてコントロールの一部が見えるようにしたいのですが、無理そうですね。
引用返信 編集キー/
■12311 / inTopicNo.7)  Re[5]: コントロールの描画をBitmapよりも下にしたい
□投稿者/ Hirotow (122回)-(2008/01/07(Mon) 21:51:48)
No12307 (デルタ さん) に返信
> ■No12264 (やじゅ さん) に返信
>>■No12216 (デルタ さん) に返信
>>>
> >>やはりフォームに直接描画したものはコントロールの上にならないでしょうか。
>>
>>そのようにしたい理由は何故でしょうか?
>>コントロールより上にするってことは、コントロールが見えなくなるので
>>コントロールを非表示にすればいいと思いますが
> >
> 
> はい、Bitmapが透過しているので、上に載せてコントロールの一部が見えるようにしたいのですが、無理そうですね。

FormではなくボタンのOnPaintで書いてみたらどうでしょうか?
button1.ColorKey = Color.Black; //カラーキーをデザイナなりコンストラクタなりで設定しておく
private void button1_Paint(object sender, PaintEventArgs e)
{
    e.Graphics.DrawImage(bmpToPaint);
}

引用返信 編集キー/
■12313 / inTopicNo.8)  Re[5]: コントロールの描画をBitmapよりも下にしたい
□投稿者/ Tom Yama (4回)-(2008/01/07(Mon) 22:31:03)
No12307 (デルタ さん) に返信
> はい、Bitmapが透過しているので、上に載せてコントロールの一部が見えるようにしたいのですが、無理そうですね。
Formに描く限りは、無理でしょう。

FormにPictureBoxか何かをのせて、そこにBitmapを表示させればいけるかもしれませんが、、、

・PictureBoxが必ず、Buttonの上にくるようにしないといけない。
・PictureBox自体を透過にする必要があるはず。
この2点のやり方を、わたしは知りません。

# あんまし、役に立つ話じゃなくて、申し訳ないです。
引用返信 編集キー/
■12318 / inTopicNo.9)  Re[6]: コントロールの描画をBitmapよりも下にしたい
□投稿者/ やじゅ (9回)-(2008/01/07(Mon) 23:40:14)
やじゅ さんの Web サイト
No12313 (Tom Yama さん) に返信
> ■No12307 (デルタ さん) に返信
>>はい、Bitmapが透過しているので、上に載せてコントロールの一部が見えるようにしたいのですが、無理そうですね。
> Formに描く限りは、無理でしょう。
>
> FormにPictureBoxか何かをのせて、そこにBitmapを表示させればいけるかもしれませんが、、、
>
> ・PictureBoxが必ず、Buttonの上にくるようにしないといけない。
> ・PictureBox自体を透過にする必要があるはず。
> この2点のやり方を、わたしは知りません。
>

出来るかわからないが、PictureBoxコントロールとかパネルとか形状を変更してその上に画像を
表示したらどうでしょうか

Visual Studio .NET の Windows フォームとコントロールの形状
http://www.microsoft.com/japan/msdn/vs/client/vbtchshapedwindowsformscontrolsinvisualstudionet.aspx#vbtchshapedwindowsformscontrolsinvisualstudionetanchor4

フォームやコントロールの形を変える
http://dobon.net/vb/dotnet/form/formregion.html

ウィンドウ(フォーム)の形を変えるには?
http://www.atmarkit.co.jp/fdotnet/dotnettips/205nonrecwin/nonrecwin.html
引用返信 編集キー/
■12340 / inTopicNo.10)  Re[7]: コントロールの描画をBitmapよりも下にしたい
□投稿者/ Tom Yama (5回)-(2008/01/08(Tue) 11:20:32)
No12318 (やじゅ さん) に返信
> 出来るかわからないが、PictureBoxコントロールとかパネルとか形状を変更してその上に画像を
> 表示したらどうでしょうか
そうですね。
# っていうか、わたしのやり方だと、ボタンが押せませんね。

それか、ボタンコントロールを配置するのを止めて、ボタンのように見えるものをBitmapの下に描くか、ですね。

# ちなみに、このやり方だと、凝ろうと思えば、いくらでも時間が吸い取られるので、
# 適当なところで、妥協してね。
引用返信 編集キー/
■12383 / inTopicNo.11)  Re[8]: コントロールの描画をBitmapよりも下にしたい
□投稿者/ クラス (4回)-(2008/01/08(Tue) 22:58:19)
No12340 (Tom Yama さん) に返信
> ■No12318 (やじゅ さん) に返信
>>出来るかわからないが、PictureBoxコントロールとかパネルとか形状を変更してその上に画像を
>>表示したらどうでしょうか
> そうですね。
> # っていうか、わたしのやり方だと、ボタンが押せませんね。
>
> それか、ボタンコントロールを配置するのを止めて、ボタンのように見えるものをBitmapの下に描くか、ですね。
>
> # ちなみに、このやり方だと、凝ろうと思えば、いくらでも時間が吸い取られるので、
> # 適当なところで、妥協してね。

みなさん! ありがとうございます!
なんとか、やってみたいと思います!
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -