![](/img/trans.png)
[英]How to set background of the linearlayout of a popup window dynamically?
[英]Set background for FMX popup window
我有一个用 Delphi 10.1 Berlin 编译的 FMX Android 项目。 用户需要 select 从 19 个值来运行它,我使用 TPopupBox 组件显示 19 个 TRadioButtons,这些按钮显示在 3 列 7+7+5 按钮中用于该选择。
默认为透明弹出窗口 window,这是无用的,因此我编辑样式以将白色 TRectangle 添加到弹出窗口 window 的背景,但前提是我调整矩形大小以匹配弹出窗口的大小。 将矩形与客户端或内容对齐只会为第一行单选按钮设置不透明背景。 我有两个问题:
我已经尝试了所有明显的对齐选项并搜索了 inte.net。 有人建议从样式列表中删除“背景”,但这没有用。 其他人建议编辑清单,但我的清单在编译时被覆盖。
我相信您错误地写了TPopupBox
并且可能打算写TPopup
。 无论如何,这就是您应该用于弹出窗口 windows 的内容。
您可能想要创建一个新项目,用于测试目的。 在左上角附近添加一个按钮。 这将显示和隐藏弹出窗口 window。
添加一个TPopup
并根据需要调整大小,然后设置Visible:= True
。
在弹出窗口中添加一个矩形并将其Align
属性设置为Contents
。 根据需要设置其Fill.Color
属性。 根据需要在矩形上添加TRadiobuttons
。
最后,切换弹出窗口可见性的代码(但请参阅 Help 中的注释):
Popup1.IsOpen := not Popup1.IsOpen;
请注意! 有许多属性共同影响TPopup
的放置: Placement
、 PlacementRectangle
、 PlacementTarget
。 由于我不知道您的需求,因此请您自行决定使用什么。
示例测试用例:
这里的PlacementTarget
是Button1
, Placement
是Bottom
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.