如何在 FireMonkey TListView 对象上绘制边框
How to draw a border on a FireMonkey TListView object
如果将 FMX.TStringGrid 拖放到新的 FireMonkey 表单上,网格将显示为细边框。
如果将 FMX.TTListView 拖放到表单上,则没有边框。
这两个组件似乎都没有 属性 用于 enabling/disabling 边框,或设置边框颜色或宽度。
我想这是由于跨平台的要求,那么应该怎么做呢?我需要添加一个面板,然后将列表视图放在面板内吗?或者它与风格有关,因为需要 TStyleBook?
是的,TListView
没有边框。 Firemonkey 提供了几种向任何可视控件添加边框的方法。为了添加一个简单的边框,我不会尝试更改样式。
在我看来,最简单的解决方案是将调色板(来自 Shapes)中的矩形放入表单中。
在矩形中将 Stroke
设置为所需的颜色和厚度。
下一步,转到设计器中的结构视图并将 Listview
作为子元素移动到此矩形中。将列表视图的 Align
属性 更改为 Client
。
要再次显示边框线,必须将矩形的Padding
(bottom, left, right, top)的值全部设置为矩形描边的值thickness。
如果您愿意,还可以在矩形或列表视图控件上添加 TShadowEffect
。
如果将 FMX.TStringGrid 拖放到新的 FireMonkey 表单上,网格将显示为细边框。
如果将 FMX.TTListView 拖放到表单上,则没有边框。
这两个组件似乎都没有 属性 用于 enabling/disabling 边框,或设置边框颜色或宽度。
我想这是由于跨平台的要求,那么应该怎么做呢?我需要添加一个面板,然后将列表视图放在面板内吗?或者它与风格有关,因为需要 TStyleBook?
是的,TListView
没有边框。 Firemonkey 提供了几种向任何可视控件添加边框的方法。为了添加一个简单的边框,我不会尝试更改样式。
在我看来,最简单的解决方案是将调色板(来自 Shapes)中的矩形放入表单中。
在矩形中将 Stroke
设置为所需的颜色和厚度。
下一步,转到设计器中的结构视图并将 Listview
作为子元素移动到此矩形中。将列表视图的 Align
属性 更改为 Client
。
要再次显示边框线,必须将矩形的Padding
(bottom, left, right, top)的值全部设置为矩形描边的值thickness。
如果您愿意,还可以在矩形或列表视图控件上添加 TShadowEffect
。