为什么工具按钮右侧留空会比左边多 |
尚未結案
|
circusmonkey
一般會員 ![]() ![]() 發表:6 回覆:10 積分:8 註冊:2004-06-28 發送簡訊給我 |
小弟在使用工具栏(TToolbar)和工具按钮(TToolButton)的时候遇到点怪问题。 如果Toolbar.ShowCaption=False,效果如图1。
|
circusmonkey
一般會員 ![]() ![]() 發表:6 回覆:10 積分:8 註冊:2004-06-28 發送簡訊給我 |
|
circusmonkey
一般會員 ![]() ![]() 發表:6 回覆:10 積分:8 註冊:2004-06-28 發送簡訊給我 |
解决了!大致思路是:
1、在创建工具栏的时候在TToolbar.CreateWnd中修改
if GetComCtlVersion >= ComCtlVersionIE4 then
Perform(TB_SETEXTENDEDSTYLE, 0, Perform(TB_GETEXTENDEDSTYLE, 0, 0) or
TBSTYLE_EX_DRAWDDARROWS or $0008);//$0008=TBSTYLE_EX_MIXEDBUTTONS(IE5.5) 2、继承TToolbar的消息事件,在TB_INSERTBUTTON事件中加入
//当然这部分的修改是选择性的。也就是说,只有那些需要caption的button才需要做以下的事情。
var
BT: PTBButton;
begin
BT := PTBButton(Message.LParam);
if TControl(BT.dwData).InheritsFrom(TToolButton) then
Style := Style or $0040; //$0040=BTNS_SHOWTEXT(IE5.5)
end; 这样应该就可以了。我测试通过了。不过没有时间封装新的工具栏了。
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |