找回密码
 注册
搜索
查看: 6454|回复: 3

反S形显示列表(JSP代码片断)

[复制链接]
发表于 2005-7-21 14:29:20 | 显示全部楼层 |阅读模式
<table width="900" height="" border="0" align="center">
  <%
  List lstAll = (List)request.getAttribute("ListAll");
  int count = 5;//每行显示数量
  int rows = lstAll.size()/count;
  int lastRowNum = lstAll.size()%count;

  for(int i=0;i<rows;i++){
     if(i%2==0){//处理单行
   %>
  <tr>
   <%
   for(int j=0;j<count;j++){//正着取值
   if(((PjpDesc)lstAll.get(j+i*count)).getPjp_status()==30){%>
   <td width="110" background="../images/beforeMake.jpg"> <%=((PjpDesc)lstAll.get(j+i*count)).getPjp_name()%></td>
   <%}if(((PjpDesc)lstAll.get(j+i*count)).getPjp_status()==31){%>
   <td width="110" background="../images/making.jpg"> <%=((PjpDesc)lstAll.get(j+i*count)).getPjp_name()%></td>
   <%}if(((PjpDesc)lstAll.get(j+i*count)).getPjp_status()==32){%>
   <td width="110" background="../images/maked.jpg"> <%=((PjpDesc)lstAll.get(j+i*count)).getPjp_name()%></td>
   <%}
      if(j!=count-1){
         %>
         <td width="35"><img width="35" height="63" src="../images/jr.jpg" /></td>
          <%
       }
     }
     if(lastRowNum==0 && i==rows-1){
     %>
      <td width="145" height="63" colspan="2" > </td>
  <%
     }else{
  %>
  <td  width="145" height="63" colspan="2" ><img src="../images/r.jpg"/> </td>
   </tr>
     <%
     }
   }
   else{//处理双行
          %>
            <tr>
       <%if(lastRowNum==0 && i==rows-1){
            %>
            <td width="145" height="63" colspan="2" > </td>
             <%
       }else{
              %>
                    <td  width="145" height="63" colspan="2" ><img src="../images/l.jpg"/> </td>
                    <%
         }
      %><%
     for(int j=count-1;j>=0;j--){//倒着取值
       if(j==count-1&& lastRowNum!=0 && i!=rows-1){
           %>
           <td width="35"><img width="35" height="63" src="../images/1.jpg" /></td>
           <%
       }else if(j!=count-1){
         %>
         <td width="35"><img width="35" height="63" src="../images/jl.jpg" /></td>
          <%
       }
            if(((PjpDesc)lstAll.get(j+i*count)).getPjp_status()==30){ %>
          <td width="110" background="../images/beforeMake.jpg"> <%=((PjpDesc)lstAll.get(j+i*count)).getPjp_name()%></td>
       <%}if(((PjpDesc)lstAll.get(j+i*count)).getPjp_status()==31){%>
              <td width="110" background="../images/making.jpg"> <%=((PjpDesc)lstAll.get(j+i*count)).getPjp_name()%></td>
       <%}if(((PjpDesc)lstAll.get(j+i*count)).getPjp_status()==32){%>
        <td width="110" background="../images/maked.jpg"> <%=((PjpDesc)lstAll.get(j+i*count)).getPjp_name()%></td>
       <%}
       }
       %>
     </tr>
     <%
     }
   }

//最后一行处理
   if(rows%2==0 && lastRowNum!=0){//处理单行
     %>
    <tr>
   <%
   for(int i=lstAll.size()-lastRowNum;i<lstAll.size();i++){
   if(((PjpDesc)lstAll.get(i)).getPjp_status()==30){%>
   <td width="110" height="63" background="../images/beforeMake.jpg"> <%=((PjpDesc)lstAll.get(i)).getPjp_name()%></td>
   <%
   }if(((PjpDesc)lstAll.get(i)).getPjp_status()==31){%>
   <td width="110" height="63" background="../images/making.jpg"> <%=((PjpDesc)lstAll.get(i)).getPjp_name()%></td>
   <%}if(((PjpDesc)lstAll.get(i)).getPjp_status()==32){%>
   <td width="110" height="63" background="../images/maked.jpg"> <%=((PjpDesc)lstAll.get(i)).getPjp_name()%></td>
   <%}
          if(i!=lstAll.size()-1){
          %>
          <td width="35"><img width="35" height="63" src="../images/jr.jpg" /></td>
          <%
          }
     }
     for(int i=lastRowNum;i<count+1;i++){//补齐最后一行
     %>
     <td width="35"></td>
     <td width="110"></td>
     <%
       }
     %>
      </tr>
     <%}else if(rows%2==1 && lastRowNum!=0){//处理双行
      %>
           <tr>
          <%
     for(int i=0;i<count-lastRowNum+1;i++){//补齐最后一行
     %>
     <td width="110"></td>
     <td width="35"></td>
     <%
     }
      for(int i=lstAll.size()-1;i>=lstAll.size()-lastRowNum;i--){
        if(i!=lstAll.size()-1){
           %>
           <td width="35"><img width="30" height="63" src="../images/jl.jpg" /></td>
           <%
        }
          if(((PjpDesc)lstAll.get(i)).getPjp_status()==30){%>
          <td width="110" height="63" background="../images/beforeMake.jpg"> <%=((PjpDesc)lstAll.get(i)).getPjp_name()%></td>
          <%
          }if(((PjpDesc)lstAll.get(i)).getPjp_status()==31){%>
          <td width="110" height="63" background="../images/making.jpg"> <%=((PjpDesc)lstAll.get(i)).getPjp_name()%></td>
          <%}if(((PjpDesc)lstAll.get(i)).getPjp_status()==32){%>
          <td width="110" height="63" background="../images/maked.jpg"> <%=((PjpDesc)lstAll.get(i)).getPjp_name()%></td>
          <%}
          }
     %>
      </tr>
     <%
    }
  %>
</table>
 楼主| 发表于 2005-7-25 10:39:06 | 显示全部楼层
<table width="900" height="" border="0" align="center">
  <%
  List lstAll = (List)request.getAttribute("ListAll");
  int count = 5;//每行显示数量
  int rows = lstAll.size()/count;
  int lastRowNum = lstAll.size()%count;

  for(int i=0;i<rows;i++){
     if(i%2==0){//处理单行
   %>
  <tr>
   <%
   for(int j=0;j<count;j++){//正着取图片
           %>
      <td width="110" height="63"><img width="110" height="63" src="<%=(((PcDesc)lstAll.get(j+i*count)).getPd_type_id().getIcon_path())%>" /></td>
            <%
      if(j!=count-1){
         %>
         <td width="35"><img width="30" height="63" src="../images/jr.jpg" /></td>
          <%
       }
     }
     if(lastRowNum==0 && i==rows-1){
            %>
            <td width="145" height="126" colspan="2" rowspan="2"> </td>
          </tr>
         <%
            }else{
         %>
         <td  width="145" height="126" colspan="2" rowspan="2"><img src="../images/r.jpg"/> </td>
   </tr>
   <tr>
     <%
     }
  for(int j=0;j<count;j++){//正着取名称
           %>
      <td width="110" height="63"><%=(((PcDesc)lstAll.get(j+i*count))).getPd_type_id().getPt_desc()%> </td>
          <%
          if(j!=count-1){
          %>
       <td width="35"></td>
            <%
          }
  }
   %>
   </tr>
   <%


   }
   else{//处理双行
          %>
            <tr>
       <%if(lastRowNum==0 && i==rows-1){
            %>
           <td width="145" height="126" colspan="2" rowspan="2"> </td>
             <%
       }else{
              %>
                    <td  width="145" height="126" colspan="2" rowspan="2"><img src="../images/l.jpg"/> </td>
                    <%
         }
      %><%
     for(int j=count-1;j>=0;j--){//倒着取图片
      if(j!=count-1){
         %>
         <td width="35"><img width="30" height="63" src="../images/jl.jpg" /></td>
          <%
       }
        %>
              <td width="110" height="63"><img width="110" height="63" src="<%=(((PcDesc)lstAll.get(j+i*count)).getPd_type_id().getIcon_path())%>" /></td>
              <%
        }
       %>
     </tr>
     <tr>
       <%
     for(int j=count-1;j>=0;j--){//倒着取名称
            %>
      <td width="110" height="63"><%=((PcDesc)lstAll.get(j+i*count)).getPd_type_id().getPt_desc()%> </td>
         <% if(j!=0){%>
       <td width="35"></td>
            <%
         }
     }
     %>
     </tr>
     <%
     }
   }

//最后一行处理
   if(rows%2==0 && lastRowNum!=0){//处理单行
     %>
    <tr>
   <%
   for(int i=lstAll.size()-lastRowNum;i<lstAll.size();i++){//正着取图片
     %>
      <td width="110" height="63"><img width="110" height="63" src="<%=((PcDesc)lstAll.get(i)).getPd_type_id().getIcon_path()%>" /></td>
         <%
          if(i!=lstAll.size()-1){
          %>
          <td width="35"><img width="35" height="63" src="../images/jr.jpg" /></td>
          <%
          }
     }
     for(int i=lastRowNum;i<count+1;i++){//补齐最后一行
     if(i==count){
         %>
            <td width="145" height="126" colspan="2" rowspan="2"> </td>
            <%
       }else{
         %>
         <td width="35"></td>
         <td width="110"></td>
       <%
         }
       }
     %>
      </tr>
       <tr>
    <%
   for(int i=lstAll.size()-lastRowNum;i<lstAll.size();i++){//正着取名称
     %>
      <td width="110" height="63"><%=((PcDesc)lstAll.get(i)).getPd_type_id().getPt_desc()%></td>
         <%
          if(i!=lstAll.size()-1){
          %>
          <td width="35"></td>
          <%
          }
     }
     for(int i=lastRowNum;i<count;i++){//补齐最后一行
         %>
         <td width="35"></td>
         <td width="110"></td>
       <%
       }
     %>       
       </tr>
     <%}else if(rows%2==1 && lastRowNum!=0){//处理双行
      %>
           <tr>
          <%
     for(int i=0;i<count-lastRowNum+1;i++){//补齐最后一行
     if(i==0){
             %>
            <td width="145" height="126" colspan="2" rowspan="2"> </td>
       <%
       }else{
     %>
     <td width="110"></td>
     <td width="35"></td>
     <%
       }
     }
      for(int i=lstAll.size()-1;i>=lstAll.size()-lastRowNum;i--){//倒着取图片
        if(i!=lstAll.size()-1){
           %>
           <td width="35"><img width="35" height="63" src="../images/jl.jpg" /></td>
           <%
        }
        %>
      <td width="110" height="63"><img width="110" height="63" src="<%=((PcDesc)lstAll.get(i)).getPd_type_id().getIcon_path()%>" /></td>
         <%
          }
     %>
      </tr>
       <tr>
          <%
     for(int i=0;i<count-lastRowNum;i++){//补齐最后一行
     %>
     <td width="110"></td>
     <td width="35"></td>
     <%
     }
      for(int i=lstAll.size()-1;i>=lstAll.size()-lastRowNum;i--){//倒着取名称
        if(i!=lstAll.size()-1){
           %>
           <td width="35"></td>
           <%
        }
        %>
      <td width="110" height="63"><%=((PcDesc)lstAll.get(i)).getPd_type_id().getPt_desc()%></td>
         <%
          }
     %>        
       </tr>
     <%
    }
  %>
</table>
回复

使用道具 举报

发表于 2005-8-15 01:03:26 | 显示全部楼层
函。。。。8 懂啊
回复

使用道具 举报

 楼主| 发表于 2005-9-2 13:53:09 | 显示全部楼层
不好意思。是我工作上做的东东。。。找个地方存一下。
注释写得不具体,嘻嘻

就是连着的数据比如 12345678,在表里一行显示5个的话就是:

1 -> 2 -> 3 -> 4 -> 5 ---
                                                   |
                      8 <- 7<-  6<--

我那个里面还加着箭头指向的图片,换行的时候有占双行的箭头图片。
以上数字其实也是图片,根据数据不同状态有不同颜色的

双行的那个就是数字下又一行说明。就是两行正着走,两行反着走

难到不难,就是写得判断好多,调了半天格式
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|宁德市腾云网络科技有限公司 ( 闽ICP备2022007940号-5|闽公网安备 35092202000206号 )

GMT+8, 2025-6-19 03:51 , Processed in 0.016578 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表