gpt4 book ai didi

java - Tapestry5 网格组件中的翻译功能

转载 作者:行者123 更新时间:2023-12-01 18:19:04 25 4
gpt4 key购买 nike

今天我有关于 Tapestry5 网格中数字格式的问题。我在 Grid 有几个字段由于一些涉及小数点和千位分隔符的规则,我需要格式化该组件。对于文本字段,我使用为整个应用程序定义的翻译器(如 this 示例),但我不知道如何为网格获得相同的功能(或者即使完全可能)。我希望有相同的机制可用对于我整个应用程序中的所有网格。

当然,并非所有数字网格字段都是货币,因此应该有某种配置它们的可能性。

我知道通过网格我可以使用 ValueEncoder,但我认为这在这种情况下不起作用,因为它对网格中显示的整个对象进行编码,而不仅仅是一些定义的字段。

还有一件事:我知道我可以定义每个字段以从方法中获取值,并且执行所有功能,但我正在寻找更灵活的东西 - 就像前面提到的文本字段的“翻译器”。

最佳答案

这可以通过一些事情的组合来完成

  1. 一个DataTypeAnalyzer给定 PropertyAdapter 生成一个 String 数据类型
  2. 一个DisplayBlockContribution它将数据类型映射到 block (另请参见 EditBlockContribution)。
  3. 将 DisplayBlockContribution 贡献给 BeanBlockSource

请注意,这不仅会影响网格,还会影响所有基于 Bean 的组件(例如 BeanDisplay)。

快速启动示例 here

关于java - Tapestry5 网格组件中的翻译功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28085440/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com