Delphi tbsSeparator TToolButton在非主题的TToolBar上采用Flat风格,中间有一条垂直线 - 如何修复它?

时间:2014-04-16 15:27:01

标签: delphi delphi-7 toolbar

我的问题与此问题有关:

Can Delphi themed toolbars have dividers that are centred between their tool buttons?

我有一个Delphi 7应用程序,TToolButton Style = tbsSeparator TToolBar Flat = True tbsSeparator。使用上述问题中接受的修补程序,如果工具栏是主题的(即,如果我的应用程序具有主题清单(tbsDivider)和Windows,则会按预期绘制XPMantbsSeparator在运行应用程序的系统上启用了主题。)

但是,如果应用程序没有清单或系统没有启用主题,则会在中间绘制一条垂直线tbsDivider,略小于{{1 }}: enter image description here

在屏幕截图中,左边的那个是tbsSeparator(它不应该在中间有一条线),右边的那个是tbsDivider(那个没问题)。

如果我关闭Flat样式,一切正常,但我希望在非主题工具栏上使用Flat样式。

所以,问题是如何在非主题tbsSeparator TToolBar样式的情况下在中间绘制没有垂直线的Flat

1 个答案:

答案 0 :(得分:2)

以下是documentation的引用:

  

BTNS_SEP样式在按钮之间创建一个小间隙或绘制   在平面工具栏上的按钮之间蚀刻。 ...

它指出,在扁平工具栏的分离器上绘制蚀刻。没有提到对主题的依赖..