ツールバーのボタンの絵の大きさを変えるには?

解決


キー  2006-08-16 20:19:25  No: 62747

いつも参考にさせて頂いています。

http://www.kumei.ne.jp/c_lang/sdk/sdk_61.htm

この辺を参考にしてツールバーを作っているのですが
ツールバー上の絵の大きさを途中で変更するようなことは可能でしょうか。

イメージリストには均一の大きさ
たとえば、16*16のような絵を横に並べているのですが
特定のボタンっだけ、横長のボタンの絵にしたいのです。

TB_XXX系のメッセージを使うのかと思い
TB_SETIMAGELISTなどを見てみましたが
個別のボタンのイメージを変更するものではなく
ツールバー全体のイメージが変更されるようで
目的のものでは無いようです。

何かご存知の方、情報をお待ちしています。


PATIO  2006-08-22 03:05:39  No: 62748

多分、通常のツールバーにボタンを追加する方法では駄目だと思います。
どうしても特定のボタンのみサイズを変えたいのであれば、自前でボタンを描画
する処理を書く必要があるのではないかと思います。
要領としては、ツールバー上にコンボボタン等を配置するテクニックの
延長で何とかなりそうな気がするのでWeb上を検索して見てはどうでしょうか?


キー  2006-08-22 20:49:25  No: 62749

PATIO様、コメントありがとうございます。

結論としてはやはり
ツールバー単体では無理、とゆーことで
解決策としてはおっしゃられたように
ツールバー上にコントロールを配置するか
ツールバー上に別のツールバーを配置することにしました。
今回は後者です。

この時、元のツールバーをオーナーにして
子のツールバーを作って
元のツールバーのOnSizeなどのイベントハンドラ中で
子のツールバーのサイズや位置を補正する必要があります。

また、子のツールバーのボタン押下のイベント→WM_COMMAND
をトラップするために
元のツールバーをサブクラス化しました。
(もっとスマートな方法もあるかも)

おかげさまで解決致しました。
ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加