CToolBarのボタンの大きさを変える方法 – プログラミング – Home

CToolBarのボタンの大きさを変え...
 
通知
すべてクリア

[解決済] CToolBarのボタンの大きさを変える方法


ひろ
 ひろ
(@ひろ)
ゲスト
結合: 24年前
投稿: 149
Topic starter  

環境はWinXP+VS.NET2003+MFCです。

プロジェクトの新規作成では、
SDIでツールバーを標準ドッキングのブラウザスタイルにして作成しました。

そのツールバーに下記のようにドロップボタンの拡張スタイルを設定しました。
m_wndToolBar.GetToolBarCtrl().SetExtendedStyle(TBSTYLE_EX_DRAWDDARROWS);

その後、ボタンを追加し、そのボタンのスタイルにもドロップボタンを設定しました。
TBBUTTON tb;
memset(&tb, 0, sizeof(tb));

tb.fsStyle = TBSTYLE_BUTTON | TBSTYLE_DROPDOWN;
tb.fsState = TBSTATE_ENABLED;
tb.idCommand = ID_32772;
tb.iBitmap = 0;
if (!m_wndToolBar.GetToolBarCtrl().InsertButton(m_wndToolBar.GetToolBarCtrl
().GetButtonCount(), &tb))
return FALSE;

XPのビジュアルスタイルにするために、実行ファイル.manifestを追加すると、
ボタンが一回り(上下左右にそれぞれ4ドットずつ位)大きくなってしまいます。

ドロップボタンにしないと大きくなりません。
ドロップボタンが1つでもあるとそのツールバーのすべてのボタンが大きくなってしまい
ます。
ツールバーを複数作っても、そのドロップボタンをつけたバーだけが大きくなってしま
います。

SetWindowTheme(m_wndToolBar.m_hWnd, _T("), _T("));
としてしまうと、XPのビジュアルスタイル(ボタンの角が丸くなっている効果)も
無効になってしまうので、違う方法を探しております。

ドロップボタンにしても大きくならない方法をご存知の方がいらっしゃいましたら、
ご教示ください。

よろしくお願いいたします。


引用未解決
トピックタグ
A
 A
(@A)
ゲスト
結合: 23年前
投稿: 59
 

スタイルに TBSTYLE_LIST を入れると良くなるかも


返信引用
ひろ
 ひろ
(@ひろ)
ゲスト
結合: 24年前
投稿: 149
Topic starter  

Aさん、ご回答ありがとうございます。

TBSTYLE_LIST を設定したところ、余計に横長になってしまいました。

ボタンのスタイルにTBSTYLE_AUTOSIZEを追加してみても、
高さは4ドットずつ大きいままでした。

ドロップボタンを付与しない方向で
UIを変更することにします。

ありがとうございました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました