jspersonft有關Table資料繫結(一)

2022-03-17 20:27:55 字數 2248 閱讀 4722

一:前言

在公司來就學著做報表,覺得這個報表學著還是很有意義的。jspersonft我在網上搜了一些有關的資料但是不是很多,現在就是學一點就記載一點。好記性不如爛筆頭嘛!

二:在jspersonft定義style樣式,邊框變「黑」、加粗:

幾個屬性除錯如下:pdf encoding:unigb-ucs2-h(chinese-simplified);

pdf font name:stsong-light;

font-name:宋體;

size:12;

padding and borders(邊框):lind width:1(這裡需要選擇四個方位的邊框在進行除錯)

三:有關在jspersonft中table資料迴圈的問題

(1)現在下面步驟來一步步說明**式的建立

1.1如下圖所示,先在右邊的元件表中拉乙個table放到detail1中,結果如下圖

1.2:在工具正中間的最下方有「main report」和table1的字樣,點選「table1」進入介面如下:

1.3:可以看到有「表頭」,「列頭」,「詳細(detail1)」,"列的footer","**的footer",現在先加列的頭,方法是入下圖一樣,在「column header」中選擇column 3然後右鍵「add cell」,即是新增一列表頭

1.4:如果想在最後加乙個單元格,就在「detail1」中右鍵選擇「add column to the end」,然後刪除「table header」、「column footer」,"table footer"中的「column 6」,如下圖

刪除上述圖形中選中的幾個column即可。

接著就是開始放表頭欄位等如下:

1.5:下面就可以談下怎麼設定table的資料來源問題,有兩種方法,一是在工具中設定,二是在**中設定

(一)先是第一種方式在工具中設定資料來源:

下面就是在**中查詢出資料放入到tables的字段傳過來,**如下:

servletcontext context =getsession().getservletcontext();

string filepath=context.getrealpath("/report/testtable.jasper");

string id=getrequest().getparametervalues("id");

list

> list=remandservice.getdata(id);

//下面是補空就是如果**資料沒有10行的行補空操作

if(list==null

)

int count=10;

if(list.size()<=count)

}else

if(list.size()>count)

}

list

> data = new arraylist>();

mapmap =new hashmap();

map.put("tables", list);

data.add(map);

自定義tab 模擬tab效果

實現效果 html模板 任務名稱 任務狀態 下次匯報時間 是否逾期 逾期天數 測試任務 進行中2019 04 25否0 測試任務2 進行中2019 04 25否0 內容二內容三 內容四主要的js var lis document.queryselectorall tab header li 查詢到所...

C 遮蔽tab 用Enter實現Tab功能

c 中如何用enter實現tab的功能呢?先按順序設定每個控制項的tabindex屬性,然後將每個控制項的key down事件指定到下面這個事件方法,可以實現按enter跳到下乙個控制項 private void numericupdown radius keydown object sender,...

Vim設定Tab寬度 替換Tab為空格

使用者配置 在 home you vimrc中新增以下 後,重啟vim即可實現按tab產生4個空格 set ts 4 注 ts是tabstop的縮寫,設tab寬4個空格 set expandtab 對於已儲存的檔案,可以使用下面的方法進行空格和tab的替換 tab替換為空格 set ts 4 set...