我有一个FireMonkey应用程序,带有GridPanelLayout,与客户端对齐。它有6列16行。控件包括图示符、编辑和按钮。TEDIT跨越多列,TButton跨越多列和多行。这些控件当前都与客户端对齐。
当我在Windows上编译和运行时,一切看起来和行为都符合预期。然而,在Android设备上(我尝试了两个,Android 6.0.1和Amazon FireOS),没有一个控件跨越超过一列或一行。它们每个只有一个单元格大。TEdits不是跨越6个通道,而是跨越1个通道;TButton不是跨越2个通道和2行,而是跨越1个通道和1行。
为什么控件不会在Android上跨越多个列或行?
当帧/表单被子类化或帧放置在另一个帧/表单上时,VCL和FireMonkey都无法正确存储TGridBoard
/TGridPanelLayout
的ControlCollection
。
此错误适用于VCL和FMX。早在2011年就已向旧QC报告,但从未修复(例如:#92298,#123225)。
示例:将带有按钮的RidPanelLayout拖放到框架上:
object GridPanelLayout1: TGridPanelLayout
(...)
ControlCollection = <
item
Column = 0
ColumnSpan = 2
Control = Button1
Row = 0
RowSpan = 2
end>
object Button1: TButton
Align = Client
Size.Width = 421.000000000000000000
Size.Height = 257.000000000000000000
Size.PlatformDefault = False
TabOrder = 0
Text = 'Button1'
end
end
当您稍后对框架进行子类化时,IDE倾向于为它从基类继承的组件存储大量冗余属性。通常在第一次按F9之后,ClonSpan
和RowSpan
属性会无缘无故地被删除。在子类上,它看起来像这样:
inherited GridPanelLayout1: TGridPanelLayout
(...)
ControlCollection = <
item
Column = 0
Control = Button1
Row = 0
end>
inherited Button1: TButton
Size.Width = 210.500000000000000000
Size.Height = 128.500000000000000000
end
end
请注意Size属性是如何更改的。此外,重新定义了ControlCollection项,但完全缺少列span和行span属性。这就是原因。
这个bug适用于您,因为在FMX中,特定平台的专用视图被实现为主视图的子类。
版本管理系统有助于检测冗余属性何时潜入DFM文件。在上面的示例中,当您的子类不更改继承的GridPanelLayout1
块时,完全删除它是合法的。此外,我建议您在不打开表单设计器窗口的情况下构建项目,因为它通常会损坏您的DFM文件并在每个机会重新添加冗余属性。
问题内容: 当将多个列与以下数据框一起使用时,Pandas Apply函数存在一些问题 和以下功能 当我尝试使用以下功能时: 我收到错误消息: 我不明白此消息,我正确定义了名称。 非常感谢你在此问题上的任何帮助 更新资料 谢谢你的帮助。我确实在代码中犯了一些语法错误,索引应该放在’‘。但是,使用更复杂的功能仍然会遇到相同的问题,例如: 问题答案: 似乎你忘记了你的字符串。 在我看来,顺便说一句,以
我有这个项目。然后我做以下步骤: 转到 预期结果:错误消息(在浏览器中呈现) 白标签错误页 此应用程序没有 /error的显式映射,因此您将此视为一种退回。星期二八月27 16:59:23CEST 2019有一个意外的错误(类型=未找到,状态=404)。没有可用的消息 如何更改附加的代码,使文件索引代替此错误。是否呈现xhtml? 更新1:如果我去,我得到这个错误: 白标签错误页此应用程序没有/E
我在运行钢筋应用程序时遇到了类似的问题 基本上,我想从以下位置运行演示代码:https://github.com/hukl/fancyapi 当我在根目录中时,我会: ERL如何找到fancyapi代码?
我试图在中制作一个简单的,用户可以在其中注册并创建他们的帐户。我在Hibernate中使用数据库和。下面是代码。 实体类: 控制器: 存储库: buisness服务类: application.properties文件: 在单击submit之后,控件似乎永远不会进入控制器,因为---2--永远不会输出到控制台,即使表单中的操作与请求映射相同。 显示的错误是: 出现意外错误(Type=不支持的媒体类
问题内容: 我正在尝试使列范围可用。具体来说,我正在寻找一个嵌套在另一个内部的方法,当用户单击以查看嵌套表时,它应该展开以向下推动下面的行并填充空白处。这类似于您在MS Access中可以嵌套表的情况,单击行上的“展开”按钮将向您显示嵌套表中的相应条目。 如果有人知道使用进行列跨度的方法,您能指出我正确的方向吗?或者,如果您知道执行此操作的其他方法,则欢迎您提出建议。该应用程序是使用Swing构建
fReceiveBuffer是否存在一个视频帧? 哦,这里是我的FFMPEG初始化代码,需要打开相关视频解码器:http://paste.ubuntu.com/12529760//