我需要在主窗体的右侧有两个 TToolBar
,所以我放置了三个 TPanel
进行对齐,然后放置 TToolBar
在它们里面。过去一天我一直试图告诉工具按钮具有相同的宽度,但无济于事。这是我所得到的屏幕截图:
我发现如果ShowCaption
设置为True
,工具栏会自动计算按钮宽度。我的问题是为什么,以及如何禁用它?
最佳答案
看看这个方法:
- 将所有按钮的“自动调整大小”设置为 False。
- 在 Form 的 OnCreate 事件中调用以下代码:
SendMessage(ToolBar3.Handle,TB_SETBUTTONWIDTH, 0, MAKELPARAM(0, <DEFAULT_WIDTH_THAT_YOU_WANT_TO_SET>));
- 确保在执行上述调用之前不要更改任何按钮的 Visible 属性,因为对于那些不可见的按钮,该操作将会失败。
- 此外,请确保 TB_SETBUTTONWIDTH 消息的使用列表中有“CommCtrl”。
了解更多详情:http://zarko-gajic.iz.hr/ttoolbars-ttoolbutton-autosize-width-issues-empty-caption/
关于delphi - 为什么当 ShowCaption 设置为 True 时,TToolBar 会自动计算按钮宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15219524/