ビットマップは貼れますが、DCを張ることはできますか?
できるとすれば、どうやればできますか?
XP、AB.4
よろしくお願いします。m(__)m
ボタンにデバイスコンテキストを貼る
Re: ボタンにデバイスコンテキストを貼る
> ビットマップは貼れますが、DCを張ることはできますか?
まずは一応確認ですが、「DCを張る」とは、何らかのデバイスコンテキスト(にアタッチされているビットマップ)をボタンコントロールのデバイスコンテキストに BitBlt() するということですね?
ボタンは本来そのようなことを想定したコントロールではありません。
試しに正攻法(GetDC() → BitBlt())で挑んでみましたが、できないようです。
> できるとすれば、どうやればできますか?
オーナー描画という手法があります。
未経験なので詳しいことはわかりませんが、ちょっと調べたところによると、コントロールの再描画が必要になったときに WM_DRAWITEM メッセージが送られてくるので、そのときにコントロールの hDC に自由に描画できるようです。
僕が提供できるヒントはここまでです。
まずは一応確認ですが、「DCを張る」とは、何らかのデバイスコンテキスト(にアタッチされているビットマップ)をボタンコントロールのデバイスコンテキストに BitBlt() するということですね?
ボタンは本来そのようなことを想定したコントロールではありません。
試しに正攻法(GetDC() → BitBlt())で挑んでみましたが、できないようです。
> できるとすれば、どうやればできますか?
オーナー描画という手法があります。
未経験なので詳しいことはわかりませんが、ちょっと調べたところによると、コントロールの再描画が必要になったときに WM_DRAWITEM メッセージが送られてくるので、そのときにコントロールの hDC に自由に描画できるようです。
僕が提供できるヒントはここまでです。