タブコントロールのオーナードロー?

タグの編集
投稿者 0  (社会人) 投稿日時 2009/2/22 06:48:00
先ほど質問したものです!
タブコントロールの色を変えるのってオーナードローって言うんですかね?
vbaでやっております。
ネットで調べましたがよくわかりませんでした。
投稿者 るきお  (社会人) 投稿日時 2009/2/22 07:17:49
こんにちは。
VBAで「タブコントロール」とはなんのことでしょうか?
タブストリップかマルチページのことでしょうか??

オーナードローは特定のコントロールに関する言葉ではなく、いろいろな表示全般にかかわってくる言葉です。既定のグラフィックではなく、特に指定したグラフィックで描画することをオーナードローと呼びます。オーナー描画とも呼ばれます。

本家VBではオーナードローが行われることが想定されていて、オーナードローしやすいような仕組みがあらかじめ提供されていますが、VBAのユーザーフォームでは逆にオーナードローは相当困難と思います。
投稿者 (削除されました)  () 投稿日時 2009/2/22 08:05:42
(削除されました)
投稿者 neptune  (社会人) 投稿日時 2009/2/22 08:14:07
↑削除しました。(誤字訂正、追記のため)
先ず。
※質問の際には使用言語、バージョンを明記して下さい。
>先ほど質問したものです!
先ほどの質問は全員が見るわけではない事を理解して下さい。

で、本題ですが、
オーナードローというと、サブクラス化が必須ですが、実行ファイル化ができないVBAでは
事実上出来ないと思って下さい。実行ファイル化出来ないのでデバッグも出来ません。
一発完璧プログラムを書いたら出来るかもしれませんが、まず無理ですよね。

もし出来ても、経験上言うと、サブクラス化できても、Excelが不安定になります。
なのでExcelでのオーナードロー、サブクラス化は出来ないと思って下さい。

下手すると、というより簡単に予測できますが、Excelがお亡くなりになったりします。

で、マルチページのpageの背景色を設定する事も出来ません。
適当なbmpを用意して、pictureプロパティを設定するとかで代替できませんか?