战斧tree2组件间距

发布于 2024-09-12 00:21:17 字数 327 浏览 4 评论 0原文

有没有办法改变节点的左边距? Tree2 使用列呈现这些边距,例如:

spacer

19 px 宽度对我来说太大了,所以我很高兴了解如何更改此值。

Is there any way to change left-margins for the nodes? Tree2 renders those margins with columns such as:

<td height="100%" width="19" style=""><img height="18" border="0" width="19" src="/vwwinner/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/12806587/tree2.HtmlTreeRenderer/images/spacer.gif" alt="spacer"></td>

19 px width is too big for me, so I'd be glad to find out how to change this value.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

深府石板幽径 2024-09-19 00:21:17

您始终可以使用 css 覆盖宽度值。

td { width: 100px; }

应该可以为树节点指定 styleClass。

无论如何,td 元素上的 width 属性已被弃用,而应使用 css。

You can always override the width value with css.

td { width: 100px; }

It should be possible to specify styleClass for the treeNode.

In any case the width attribute on the td element is deprecated and css should be used instead.

樱桃奶球 2024-09-19 00:21:17

好吧,由于未知的原因,该值被硬编码在 t:tree2 渲染器类 (HtmlTreeRenderer) 中:

protected void encodeCurrentNode(...) {
        .....
        out.writeAttribute(HTML.WIDTH_ATTR, "19", null);
        out.writeAttribute(HTML.HEIGHT_ATTR, "100%", null);
        ...
}

所以我只是扩展了该类,重写了 encodeCurrentNode() 方法并在 faces-config.xml 中注册了我的渲染器:

<render-kit>
  <render-kit-id>HTML_BASIC</render-kit-id>
  <renderer>
      <component-family>org.apache.myfaces.HtmlTree2 </component-family>
    <renderer-type>
        org.apache.myfaces.HtmlTree2 
    </renderer-type>
    <renderer-class>
        com.myapp.MyHtmlTreeRenderer
    </renderer-class>
 </renderer>
</render-kit>

Well, for unknown reasons that value was hardcoded in t:tree2 renderer class (HtmlTreeRenderer):

protected void encodeCurrentNode(...) {
        .....
        out.writeAttribute(HTML.WIDTH_ATTR, "19", null);
        out.writeAttribute(HTML.HEIGHT_ATTR, "100%", null);
        ...
}

So I just extended that class, overrided encodeCurrentNode() method and registered my renderer in faces-config.xml:

<render-kit>
  <render-kit-id>HTML_BASIC</render-kit-id>
  <renderer>
      <component-family>org.apache.myfaces.HtmlTree2 </component-family>
    <renderer-type>
        org.apache.myfaces.HtmlTree2 
    </renderer-type>
    <renderer-class>
        com.myapp.MyHtmlTreeRenderer
    </renderer-class>
 </renderer>
</render-kit>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文