- ベストアンサー
メッセージボックスの背景色
いつもお世話になってます。 VB6.0でメッセージボックスの背景を任意の色に変更する事は可能ですか? フォームの背景をデフォルトの色(&H8000000F&)と違う色(&H00FFC0C0&)にしているので、メッセージボックスも同じ色に合わせたいのです。 どうすればメッセージボックスの背景色を変更する事ができるのでしょう? 御存知の方、回答よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
メッセージボックスみたいなフォームを任意に作って、表示させたいイベントでSHOWさせてみたらいかがでしょう。
その他の回答 (2)
- 2ch
- ベストアンサー率51% (64/125)
やってできないことはない。 単純方法としては、画面のプロパティを操作してやりゃ、当然ながら色は変わる。 でもWindows自体を触るので却下として。。。 フックして、WM_PAINTなどの時に、独特の配色をしてやりゃ、できるはず。 実験はしていないが、フックしてからメッセージメッセージボックスを表示することになるため、フック関数部分をCreateThreadで、別スレットでの制御にしないと、基本的にシングルスレットVBでは落ちるように思える。 これは想像であって、もしかしたら別スレにしないでも、大丈夫かもしれない。 あまりにも一般的ではなさ過ぎるように思えるし、かなり面倒そう。 よって参考URLの締めと同様、オリジナルフォームを作った方がよさそう。
お礼
回答ありがとうございました。 メッセージボックスの背景色を変更したアプリやOCXの存在を聞いたことがあるので 簡単にできるのかと思ってました。 メッセージボックスはフォームから作ることにします。
- hayahayahaya
- ベストアンサー率36% (41/113)
VBでのMessageBoxはシステムで表示されているので、色変えはできないはずです。 #1の方の仰る通り自作のMessageBoxをFormで作成して、Show 1(モーダル表示)させるのだ一番だと思います。
お礼
回答ありがとうございました。 メッセージボックスの背景色を変更したアプリやOCXの存在を聞いたことがあるので 簡単にできるのかと思ってました。 メッセージボックスはフォームから作ることにします。
お礼
回答ありがとうございました。 メッセージボックスの背景色を変更したアプリやOCXの存在を聞いたことがあるので 簡単にできるのかと思ってました。 メッセージボックスはフォームから作ることにします。