控制dataTable中列宽

rockjava 2007-03-28
使用标准的 <h:dataTable> 和 <h:column> 是无法控制列宽的,只好用 CSS 来控制了,
可以用 <t:column> 来替换 <h:column> , <t:column> 中有一个 width 属性,通过调整该属性来控制列宽。
insomniask 2007-07-10
知道了!!
jason-tang 2007-07-19
rockjava 写道
使用标准的 <h:dataTable> 和 <h:column> 是无法控制列宽的,只好用 CSS 来控制了,
可以用 <t:column> 来替换 <h:column> , <t:column> 中有一个 width 属性,通过调整该属性来控制列宽。


我試了,但好像有問題?可否給個例子.

<t:dataTable id="marmtbs" var="marmtb" style="margin-top: 10px"
    value="#{marmtbList.marmtbs}" rows="25" sortColumn="#{marmtbList.sortColumn}"
    sortAscending="#{marmtbList.ascending}" styleClass="scrollerTable table"
    headerClass="standardTable_Header" rowClasses="standardTable_Row1,standardTable_Row2"
    columnClasses="standardTable_Column,standardTable_Column,standardTable_Column,standardTable_Column,standardTable_ColumnCentered">

    <t:column width="700">
        <f:facet name="header">
            <t:commandSortHeader columnName="partNo" arrow="true">
                <h:outputText value="#{text['marmtb.partNo']}" />
            </t:commandSortHeader>
        </f:facet>
        <h:outputText value="#{marmtb.partNo}" escape="true"/>
    </t:column>
......
</t:dataTable>
Javabengou 2007-07-19
我觉得本来就该用CSS控制
这样才能发挥CSS的作用
heavens 2007-07-20
<h:dataTable>也可以控制列宽的,用columnClasses就可以了,不过前提是你要设置datatable的width属性。
langds 2007-07-29
可以扩展一下该组件,在dataTable上新增一个columnWidths属性,类似columnClasses属性一样,为每列设置相对宽度.
目前我就是样做的.
PS. Myfaces以前的版本里自带的dataTable有问题, tomahawk的1.1.5版本的dataTable也有问题,现在新的版本都已经修正了.
jason-tang 2007-07-31
langds 写道
可以扩展一下该组件,在dataTable上新增一个columnWidths属性,类似columnClasses属性一样,为每列设置相对宽度.
目前我就是样做的.
PS. Myfaces以前的版本里自带的dataTable有问题, tomahawk的1.1.5版本的dataTable也有问题,现在新的版本都已经修正了.


Thanks.但columnClasses 好像不起作用?
Hotpepper 2007-08-23
就是使用columnClasses,为每个列指定一个css样式,绝对可以的!
ayaya 2007-09-03
对于整体控制还可以,局部处理没有好地解决方式
css:  
<style>  
.columnClasses{  
       width:200px;  
       word-wrap:break-word;  
}  
.columnClz{  
       width:300px;  
       word-wrap:break-word;  
       background: #ccc;  
}  
</style>  
 
dataTable:  
<h:dataTable value="#{TableBean.userList}" var="user" styleClass="orders"  columnClasses="columnClasses,columnClz"  headerClass="ordersHeader" footerClass="ordersHeader" rowClasses="evenColumn,oddColumn,otherColumn">  
                     <h:column>  
                            <f:facet name="header">  
                                   <h:outputText value="UserName"/>  
                            </f:facet>  
                            <h:outputText value="#{user.name}"/>  
                            <f:facet name="footer">  
                                   <h:outputText value="******"/>  
                            </f:facet>  
                     </h:column>  
                     <h:column>  
                            <f:facet name="header">  
                                   <h:outputText value="Password"/>  
                            </f:facet>  
                            <h:outputText value="#{user.password}"/>  
                            <f:facet name="footer">  
                                   <h:outputText value="******"/>  
                            </f:facet>  
                     </h:column>  
              </h:dataTable>  


columnClasses="columnClasses,columnClz"
一种很笨拙的解决方法

Global site tag (gtag.js) - Google Analytics