- - PR -
Messengerのような画面制御について
«前のページへ
1|2|3|4
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2007-06-13 20:09
前の投稿では、
と書きました。 「その」 というのが重要で。 つまり、サイズを変更したいコントロールやフォームの WndProcで返さないといけない、ということです。 ピクチャボックスコントロールのWndProcで返してもだめです。 | ||||||||
|
投稿日時: 2007-06-13 21:59
れいさん、いつも回答ありがとうございます。
>ピクチャボックスコントロールのWndProcで返してもだめです。 やはりそうなんですね。。。 今までのやり取りをまとめると、私が作成しようとしているフォームでは、WndProcだけでやりたい事を行えないという事になりますよね? ですので、違う方法で対応できるか検討してみます。 でも、WndProcをオーバーライドしてこのような処理ができる事を知れたので、とてもいい勉強になりました。 どうもありがとうございましたm(__)m | ||||||||
|
投稿日時: 2007-06-14 03:49
いいえ。 FormのWndProcおよび、 PictureBoxを継承しWndProcだけOverrideしたコントロールだけでできます。 参考のつもりでヒットテストの戻り値や 「操作透過」などのキーワードを並べておいたつもりですが…。 このまま「解決策なし」で終わるとつまらないので、 解決案の一例を。
このHitTransPictureBoxは、全てのヒットテストを透過します。 昔はこういった手法で操作透過する透明な窓を作りました。 | ||||||||
|
投稿日時: 2007-06-14 09:49
れいさん、いつも回答ありがとうございます。
>このまま「解決策なし」で終わるとつまらないので 私の経験が浅くて申し訳ありません。 今まで継承などはほとんどやった事がなく、理解するのに時間がかかるかと思ったのでこのやり方をあきらめようと思っていました。 本日は時間に余裕がないので、教えていただいた方法を参考にして確認できましたら、再度報告させていただきます。 いつも丁寧なアドバイスありがとうございます。 | ||||||||
|
投稿日時: 2007-06-15 10:24
こんにちは。
れいさんに教えていただいた方法で継承コントロールを作成したところ、全てのヒットテストを透過するコントロールを作成することができました。 これにより、フォーム端にあるコントロール上で ・フォームの移動 ・フォームサイズの変更 が行えるようになりました。 最初に自分で考えていた方法では、座標値を計算してLocationを変えたり、マウス形状を変えたりしていたため、チラつきが気になるものとなっていましたが、教えていただいた方法に置き換えることで、際立てチラつくところはなくなったように思えます。 このようにWndProcをオーバーライドして処理を行うという発想をしたことがなかったので、非常に勉強になりました。 本当にありがとうございました m(__)m |
«前のページへ
1|2|3|4