いつも参考にさせて頂いています。
http://www.kumei.ne.jp/c_lang/sdk/sdk_61.htm
この辺を参考にしてツールバーを作っているのですが
ツールバー上の絵の大きさを途中で変更するようなことは可能でしょうか。
イメージリストには均一の大きさ
たとえば、16*16のような絵を横に並べているのですが
特定のボタンっだけ、横長のボタンの絵にしたいのです。
TB_XXX系のメッセージを使うのかと思い
TB_SETIMAGELISTなどを見てみましたが
個別のボタンのイメージを変更するものではなく
ツールバー全体のイメージが変更されるようで
目的のものでは無いようです。
何かご存知の方、情報をお待ちしています。
多分、通常のツールバーにボタンを追加する方法では駄目だと思います。
どうしても特定のボタンのみサイズを変えたいのであれば、自前でボタンを描画
する処理を書く必要があるのではないかと思います。
要領としては、ツールバー上にコンボボタン等を配置するテクニックの
延長で何とかなりそうな気がするのでWeb上を検索して見てはどうでしょうか?
PATIO様、コメントありがとうございます。
結論としてはやはり
ツールバー単体では無理、とゆーことで
解決策としてはおっしゃられたように
ツールバー上にコントロールを配置するか
ツールバー上に別のツールバーを配置することにしました。
今回は後者です。
この時、元のツールバーをオーナーにして
子のツールバーを作って
元のツールバーのOnSizeなどのイベントハンドラ中で
子のツールバーのサイズや位置を補正する必要があります。
また、子のツールバーのボタン押下のイベント→WM_COMMAND
をトラップするために
元のツールバーをサブクラス化しました。
(もっとスマートな方法もあるかも)
おかげさまで解決致しました。
ありがとうございました。
ツイート | ![]() |