2

我无法使用 GWT 的常用 i18N 本地化来本地化 TabLayoutPanel 中的选项卡名称(“标题”)。

这有效:

<g:TabLayoutPanel addStyleNames='LocationsModule' barUnit="PX" barHeight="30" >
        <g:tab>
    <g:header>Locations</g:header>

但我无法让任何其他版本工作:

    <g:header text='{messages.layersTabTitle}' />

或者

    <g:customHeader>
    <g:Label text='{messages.locationsTabTitle}' />
    <g:Label>'{messages.locationsTabTitle}'</g:Label>
    </g:customHeader> 

任何人都能够做到这一点,而不诉诸代码?

4

2 回答 2

4

我认为您需要在这里使用稍微不同的语法:

检查这个例子: http://code.google.com/p/google-web-toolkit/source/browse/trunk/user/test/com/google/gwt/uibinder/test/client/I18nMessageTest.ui.xml? r=7940

所以它应该是这样的:

<g:customHeader>
    <g:Label><ui:text from="{messages.locationsTabTitle}" /></g:Label>
    </g:customHeader> 
于 2012-06-25T13:07:04.433 回答
0

您还可以直接在 g:header 元素中使用 ui:text 元素,避免使用 g:customHeader 或 g:Label,例如:

<g:header><ui:text from="{messages.locationsTabTitle}" /></g:header>

(这与 Arne 链接到的文件如何在 h2 元素中使用 ui:text 类似 - 尽管不完全相同 - http://code.google.com/p/google-web-toolkit/source/browse/ trunk/user/test/com/google/gwt/uibinder/test/client/I18nMessageTest.ui.xml?r=7940 )

在 GWT 2.4.0 中测试。

于 2012-12-04T11:02:30.003 回答