繁体   English   中英

为 FMX 弹出窗口设置背景 window

[英]Set background for FMX popup window

我有一个用 Delphi 10.1 Berlin 编译的 FMX Android 项目。 用户需要 select 从 19 个值来运行它,我使用 TPopupBox 组件显示 19 个 TRadioButtons,这些按钮显示在 3 列 7+7+5 按钮中用于该选择。

默认为透明弹出窗口 window,这是无用的,因此我编辑样式以将白色 TRectangle 添加到弹出窗口 window 的背景,但前提是我调整矩形大小以匹配弹出窗口的大小。 将矩形与客户端或内容对齐只会为第一行单选按钮设置不透明背景。 我有两个问题:

  1. 我如何自动调整矩形的大小而不是在设计时修复它以匹配我为 popup.bounds 设置的计算值?
  2. 将 TRectangle 添加到样式背景是获得不透明控件的最佳方式吗?

我已经尝试了所有明显的对齐选项并搜索了 inte.net。 有人建议从样式列表中删除“背景”,但这没有用。 其他人建议编辑清单,但我的清单在编译时被覆盖。

我相信您错误地写了TPopupBox并且可能打算写TPopup 无论如何,这就是您应该用于弹出窗口 windows 的内容。

您可能想要创建一个新项目,用于测试目的。 在左上角附近添加一个按钮。 这将显示和隐藏弹出窗口 window。

添加一个TPopup并根据需要调整大小,然后设置Visible:= True

在弹出窗口中添加一个矩形并将其Align属性设置为Contents 根据需要设置其Fill.Color属性。 根据需要在矩形上添加TRadiobuttons

最后,切换弹出窗口可见性的代码(但请参阅 Help 中的注释):

Popup1.IsOpen := not Popup1.IsOpen;

请注意! 有许多属性共同影响TPopup的放置: PlacementPlacementRectanglePlacementTarget 由于我不知道您的需求,因此请您自行决定使用什么。

示例测试用例:

在此处输入图像描述

这里的PlacementTargetButton1PlacementBottom

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM