導航:首頁 > 編程語言 > 列印插件java

列印插件java

發布時間:2022-10-03 02:58:47

java裡面有沒有組件可以直接連接列印機列印數據


JasperReports與iReport 簡介
簡介 JasperReports是一款開源的報表列印組件,是開源代碼組織sf.net中的一個java報表列印工程,可以以pdf, HTML或XML等多種形式產生報表,支持分頁列印,並且可以製作各種類型的圖表。Jasperreport是按照一個預定義的xml文檔來組織報表的數據,這些數據來源多樣,包括關系資料庫(通過配置JDBC連接)、java容器對象(collection和arrays)。要完成報表的填充,必須先完成用於報表的xml文件,其過程是先產生報表設計對象,再序列化該對象,存儲在磁碟或者網路,用於產生特定應用的表格數據。事實上,表單的設計過程就是用定義於xml文件中的java表達式來表現報表的設計。編輯過程中會有各種保證數據一致性的驗證,最終會產生相關數據文檔或填充數據的准備。 iReport也是開源組織sf.net中的一款免費軟體,其主要作用是以可視化的方式升級生成JasperReport所使用的報表格式文件,因為JasperReport本身沒有提供很好的可視化報表設計工具,iReport正好彌補了這個缺陷,因此我們常常將這兩個工具結合起來使用。 JasperReports可以在這個地址得到: http://jasperreports.sourceforge.net/ iReport 可以在這個地址得到: http://ireport.sourceforge.net/ iReport的使用 iReport的安裝 安裝iReport首先需要在本機安裝JDK,並對環境進行配置,最新版的JDK可以從http://www.sun.com 處下載並安裝,然後配置windows環境變數,在path後面加入「;java的安裝目錄」,新建環境變數 JAVA_HOME :「java的安裝目錄」 CLASSPATH:「java的安裝目錄\bin」 如果已經安裝過JDK,則可以跳過這些步驟。然後從iReport的站點下載最新的版本的iReport,解壓iReport在任意目錄,解壓後的文件裡面有一個iReport.bat,通過雙擊,過大約30秒鍾如果可以彈出iReport的主窗體即表明你的系統已經可以運行iReport了,如果不能彈出主窗體,一般是因為JDK沒有正確被安裝。在iReport中配置資料庫使用iReport的第一步是配置資料庫連接,選擇菜單「資料來源/連接資料來源」,打開如下的對話框, 點擊「New」,打開如下對話框,可以創建數據連接, 我們以創建JDBC數據源為例,在「Type of connection / datasource」列表中,選擇「Database.JDBC.connection」,在「Name」中,為創建的新的連接取一個需要的名字,在JDBC Driver中,選擇一個驅動,我們以Oracle為例,選擇「oracle.jdbc.driver.OracleDriver」,在JDBC URL中輸入JDBC連接,例如:「jdbc:oracle:thin:@localhost:1521:TANGO」,同時請在Username和Password中輸入連接資料庫的用戶和密碼。注意一點OracleJDBC的包必須在環境變數的CLASS_PATH中配置。全都創建好後,點擊「Test」可以進行對資料庫連接的測試。建立連接後,就可以對數據表進行查詢,選擇菜單「資料來源/報表查詢」,打開如下對話框: 在「Report SQL query」頁中,可以輸入任意的sql數據來得到數據,當輸完完整的sql語句後,iReport自動將所有欄位列表列出,這些欄位就是可以在報表製作過程中可以使用的變數。另外需要注意的是:當我們創建了多個數據源的時候,需要設定一個當前的數據源,選擇菜單:「設定/設置當前數據源」,打開如下對話框: 可以在所有建立的數據源中設置當前使用的數據源。從java容器獲得數據通過JDBC獲得數據非常方便,但我們通常不會在設計期就確定完整的sql語句,通常我們在運行期都需要構造一些動態的sql,當然,我們可以通過編程的方式來構造sql並傳遞給iReport,但是復雜的sql語句不便於維護,也容易出錯。JasperReports允許從java容器中獲得數據,首先告訴iReport,java容器類的路徑,選擇菜單:「工具/classpath」,如圖: 設置完路徑後,再次選擇菜單「資料來源/報表查詢」,到「JavaBean Datasource」頁,在Class Name中輸入容器類的全路徑,如下圖: 點擊「Read javabeans attributes」,容器中的欄位就全部被讀取了出來。至此為止,我們已經可以開始製作報表了。開始使用iReport iReport的開發界面和我們熟悉的delphi著名插件quickreport比較相似,整個頁面由若干個band組成,每個band實現不同的顯示方式。界面如下: 新建報表單擊工具欄的第一個按鈕「New Report」,或者通過菜單「報表/新增」進入創建報表菜單,如下圖: 在報表名稱欄內給創建的報表取個名字,然後是定義紙張的大小,iReport提供了多種預設尺寸,當然也可以選擇自定義的頁面尺寸,並提供兩種定位方式,也即橫向和豎向。在對話框的下半頁,還可以設置頁邊距,列等等。當都設置完成,點擊「OK」,完成新建動作。報表結構創建了一個新的報表後,我們來看看報表的結構。一個報表的結構大致是幾個部分:title、pageHeader、columnHeader、detial、columnFooter、pageFooter、summary、groupHeader、groupfooter。 Title:每個報表一般會有一個名字,比如×××銷售報表,title就是擱置這個名稱的最好地方了,當然你也可以根據需要擱置在合適的地方。 pageHeader:報表的一些公共要素,比如頁碼、創建時間、創建人等信息放置在這里是比較好的選擇。在每頁頭都會列印一遍 columnHeader:這里是放置列的名稱,記住不是列數據。 Detial:放置需要循環的數據,比如銷售記錄數據。 columnFooter:放置列級別的統計計算值或是列的說明。 pageFooter:放置頁級別的統計值或是頁的說明。 Summary:可能需要對幾頁(你的報表可能有幾個頁組成)的統計值。比如50個銷售記錄共佔用了3頁,那麼放置這些統計記錄的統計值最好的地方就是summary。 groupHeader:每個表的內容可能需要根據某個屬性進行劃分顯示內容和計算內容,比如希望以月份為單位每組分開顯示銷售記錄,那麼就可以定義一個組(組的定義參考後文),groupHeader就是放置組說明或是組標志最好的地方。 Groupfooter:放置組的統計或是說明。報表的動態對象變數、參數、欄位在使用iReport的過程中會碰到很多與變數(Variables)、參數(Parameters)、欄位(Fields)這些有關的內容,所以我們還是要先介紹這些對象的使用和意義:欄位(Fields):來自資料庫,或是java容器對象。這些內容是報表顯示的主體內容,語法為$F{ filedsName }。參數(Parameters):這是你的應用需要提供給報表的入口,比如你希望在報表被解釋的時候提供Where語句的條件值,那麼就可以使用參數(Parameters)。語法為$P{ parameterName },可以給報表提供多個參數,通過一個HashMap傳入。使用參數前,參數必須在iReport中進行配置,如,我們需要在列印時得到列印操作人,我們創建一個參數列印人:printOperator。選擇菜單「預覽——報表參數」,打開如下對話框: 在參數頁面,點擊「新增」按鈕,繼續打開如下新增參數對話框: 在「Parameter name」內,填入參數名稱:「printOperator」,在「Paramenter class type」選擇框中,選擇參數的類型,我們這里選擇「java.lang.String」,在「Default value expression」中填入當傳入的值缺失時的預設值,因為iReport是純java語言開發,因此支持任何java語句。在「Paramenter description」中可以對該參數進行一些描述。點擊「OK」完成參數的創建。下面給出簡單的程序調用實例: HashMap map = new HashMap(); Map.put(「printOperator」,」陳寧」); JasperFillManager.fillReport(jasperReport,map,ds); 變數(Variables):這是報表中一些邏輯運算的表現,比如統計值(求和,最大值,最小值等等)。語法為$V{ variablesName },例如我們要對定單金額進行求和,假設定單金額的資料庫欄位為amt,我們現在創建變數名為totalAmt的對定單金額進行匯總的變數,點擊菜單「預覽/報表變數」,打開如下對話框: 我們看到iReport已經為我們預先定義了五個有用的變數,供我們使用,具體含義如下: • $V{REPORT_COUNT}: 報表處理的記錄筆數 • $V{PAGE_NUMBER}: 列印時的頁碼 • $V{PAGE_COUNT}: 本頁處理的記錄筆數 • $V{COLUMN_NUMBER}: 報表的直欄數目 • $V{COLUMN_COUNT}: 本欄的處理筆數 • $V{群組名_COUNT}: 群組Band的處理筆數,建立群組時會自動產生的變數其中最後一個變數是根據分組情況自動生成的。我們現在新增一個自己定義的變數,點擊「新增」,打開新增變數對話框: 在「Variable name」中,輸入變數名:「totalAmt」,在「variable class type」中選擇變數的類型「java.math.BigDecimal」,在「Calculation type」中選擇計算的類型,這里是求和「Sum」,在「Variable expression」中輸入變數的表達式,我們這里是取資料庫中的欄位amt,所以寫成「$F{amt}」,請注意。當我們正確的配置了數據來源後,當我們輸入的表達式正確,那麼顯示的顏色是綠色的的,當不能正確寫對表達式的時候,是如圖所示的藍色。然後我們在「initial value expression」中輸入初始化的值,這里同樣輸入java語句:「new java.math.BigDecimal(0)」。點擊「OK」,完成參數的設置。在報表頁面放置元素 iReport的工具欄提供了豐富的元素,從簡單的內容到包括圖形,分組報表都支持。我們主要介紹兩類,一類為靜態文本,一類為動態文本。這兩個工具按鈕如下: 點擊「T」的工具按鈕,打開添加「靜態文本」的對話框。 他的用法比較簡單,有一些計算機使用經驗的人都能看懂,就不在這里介紹了。這里只說一點:要顯示的內容是在Static Text頁面中輸入,在Print when expression中,可以接受返回類型為Boolean的java表達式,當返回Boolean.TRUE,才會列印該靜態文本,當返回為Boolean.FALSE則不列印,在本文後面會介紹利用這個特性列印黑白交替的行顯示效果。我們再看看動態文本,點擊「F」,打開如下對話框: 動態與靜態文本大致類似,動態文本在「Text Field」中接受表達式,在「Textfield expression」中,輸入動態表達式「$F{s_data_1}」,如圖,綠色代表輸入正確。在Pattern中,還可以輸入數據顯示的格式。製作報表有了上面的基本知識,我們就可以開始製作報表了。我在製作報表中,考慮了以下的思路。首先,取數據通過java容器,而不是直接連接資料庫,這是因為我們製作的報表通常都比較復雜,很難直接通過一個簡單的sql語句來實現,就算我們可以寫一個復雜的select語句來實現一個報表的查詢,但是對於以後的維護和排錯也是相當困難的,因此不建議這樣的做法。從另一個角度考慮,報表的很多查詢條件是根據用戶的輸入來動態的創建的,我們在後台對數據進行整理和加工都會使程序的調試和實現變得簡單。我創建了數據容器類:ReportBaseObject,非常簡單,部分代碼如下: public class ReportBaseObject { private String s_data_1; private String s_data_2; private String s_data_3; …… private String s_data_20; private BigDecimal b_data_1; private BigDecimal b_data_2; private BigDecimal b_data_3; …… private BigDecimal b_data_20; private Date d_data_1; private Date d_data_2; private Date d_data_3; …… private Date d_data_10; private Integer i_data_1; …… private Integer i_data_10; public BigDecimal getB_data_1() { return b_data_1; } public void setB_data_1(BigDecimal b_data_1) { this.b_data_1 = b_data_1; } …… public Date getD_data_1() { return d_data_1; } public void setD_data_1(Date d_data_1) { this.d_data_1 = d_data_1; } …… public Integer getI_data_1() { return i_data_1; } public void setI_data_1(Integer i_data_1) { this.i_data_1 = i_data_1; } …… public String getS_data_1() { return s_data_1; } public void setS_data_1(String s_data_1) { this.s_data_1 = s_data_1; } …… } 這是一個通用的數據容器,容器中定義了20個字元類型的欄位,20個數字類型的欄位,10個日期和10個整型,這個容器對於任何報表都適合,這樣做是基於以下考慮。我把報表製作分為兩個部分,第一部分是用iReport製作報表界面,第二部分在後台根據用戶傳入條件取得報表需要的數據。而第一部分可以由項目人員在現場製作後後期進行修改,而第二部分由開發人員完成,因此要求這兩部分的工作可以分離,通過提供一個通用對象,我們可以實現這一目的。工程人員在現場和客戶洽談需求,並在沒有數據的情況下,開始製作報表界面,他們所要做的就是用一張表格列出他們需要的數據的含義:如: baseObject 對應欄位 說明 報表編號:01_001 S_data_1 單號 S_data_2 單據類型 D_data_1 要貨日期 D_data_2 批准時間 B_data_1 應付金額 B_data_2 已付金額 在與用戶確認了界面後,工程人員將表格傳遞給開發人員,開發人員就根據表格所標注的欄位意義給容器填寫數據。以下是我畫的報表截圖: 顯示不同的背景如下圖所示,我們希望列印出灰白相間的行效果,可以利用上文提到的「print when expresssion」屬性來實現,具體做法有兩種: 在同一列上放相同欄位的TextField,一個不設背景(預設為白色),另一個設背景(淡黃色) 白色背景的Print when expression輸入new Boolean((($V{PAGE_COUNT}.intValue()) % 2)==0) 灰色背景的Print when expression輸入new Boolean((($V{PAGE_COUNT}.intValue()) % 2)==1) 另一個方法是先在Detail Band上拉一個矩形,設其背景為淡黃色,設其Print when expression為new Boolean((($V{PAGE_COUNT}.intValue()) % 2)==1),意即奇數列時才要印出這個淡黃底色的矩形。再設其前景為白色,使矩形邊界的黑框消失。在矩形上放需要的Text Field,並將其Transparent打勾,意即此Text field是透明的。

調用IE內置列印組件完成web列印方案及常式
重點:
<OBJECT id=WebBrowser classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 width=0 VIEWASTEXT>
</OBJECT>
<input type=button value=列印 onclick="document.all.WebBrowser.ExecWB(6,1)" class="NOPRINT">
<input type=button value=直接列印 onclick="document.all.WebBrowser.ExecWB(6,6)" class="NOPRINT">
<input type=button value=頁面設置 onclick="document.all.WebBrowser.ExecWB(8,1)" class="NOPRINT">
<input type=button value=列印預覽 onclick="document.all.WebBrowser.ExecWB(7,1)" class="NOPRINT">

注意:
1、CSS對列印的控制:
<!--media=print 這個屬性可以在列印時有效-->
<style media=print>
.Noprint{display:none;}
.PageNext{page-break-after: always;}
</style>

Noprint樣式可以使頁面上的列印按鈕等不出現在列印頁面上,這一點非常重要,因為它可以用最少的代碼完成最需要的功能

PageNext樣式可以設置分頁,在需要分頁的地方<div class="PageNext"></div>就OK了,呵呵

2、表格線粗細的設置,更是通過樣式表:

<style>
.tdp
{
border-bottom: 1 solid #000000;
border-left: 1 solid #000000;
border-right: 0 solid #ffffff;
border-top: 0 solid #ffffff;
}
.tabp
{
border-color: #000000;

border-collapse:collapse;
}
</style>

或者:

<style>
.TdCs1 {
border:solid windowtext 1.0pt;
}
.TdCs2 {
border:solid windowtext 1.0pt; border-left:none;
}
.TdCs3 {
border-top:none;
border-left:solid windowtext 1.0pt;
border-bottom:solid windowtext 1.0pt;
border-right:solid windowtext 1.0pt;
}
.TdCs4 {
border-top:none;
border-left:none;
border-bottom:solid windowtext 1.0pt;
border-right:solid windowtext 1.0pt;
}
.underline {
border-top-style: none;
border-right-style: none;
border-bottom-style: solid;
border-left-style: none;
border-bottom-color: #000000;
}
</style>

很多種列印的方式了,你走走腦子上網艘艘,沒有找不到的
給你個列印excel例子,跟上面的不同
下載一個叫jcom的lib,鬼子做的
把包里的jcom.jar放到classpath,把jcom.dll放到java_home/bin下面
public class JCOM {

public boolean print(String fname) {
ReleaseManager rm = new ReleaseManager();
try {
ExcelApplication excel = new ExcelApplication(rm);

ExcelWorkbooks xlBooks = excel.Workbooks();
ExcelWorkbook xlBook = xlBooks.Open(fname);
ExcelWorksheet xlSheet = excel.ActiveSheet();

xlSheet.PrintOut();

xlBook.Close(false, null, false);
excel.Quit();
} catch (Exception e) {
e.printStackTrace();
return false;
} finally {
rm.release();
}
return true;
}

public static void main(String[] args) {
JCOM test = new JCOM();

try {
test.print("c:\\test.xls");
} catch (Exception e) {
e.printStackTrace();
}
}
}

❷ java web 自動化報表插件

採用報表列印插件是最好的方式。
報表插件優勢:報表插件在伺服器端不駐留程序,伺服器只要提供約定格式的 XML 數據就行了。所以有如下優勢:
1、支持所有的WEB伺服器平台。
2、報表的生成是在各自客戶端電腦上,這樣大大減輕了伺服器的負載壓力,能夠做到更大的並發訪問。
3、插件在客戶端運行是電腦原生程序,與桌面程序具有一樣的運行性能,並能開發出桌面程序類似的報表功能。
4、能驅動列印機直接進行列印,是WEB軟體實現列印功能的最好方式。

❸ java 做列印能指定哪台列印機列印哪個文件嗎

java可以通過ip和埠指定列印機,文件的話應該不能,我以前做的是直接編寫列印命令列印文件,現在是用lodop插件列印html

❹ 在瀏覽器里列印網頁,提示java插件致命錯誤,無法從 裝入Java運行時環境,怎麼辦

系統中少一個插件,dx插件,你必須在系統升級最高的版本才可以使用,我覺得你的瀏覽器版本有可能太低也會造成,你可以下載一些穩定的瀏覽器,比如uc瀏覽器,360瀏覽器,這些瀏覽器針對的插件比較多,而且使用性能也比較穩定,建議安裝這些瀏覽器。

❺ java代碼的列印信息控制項怎麼做或者有現成的代碼也行。

一: 首先理清業務邏輯

兩個窗口, 第一個主窗口, 是用於填寫信息的, 點擊按鈕後,跳轉到第二個窗口,.

第二個對話框窗口 ,用於顯示需要列印的信息, 以及列印到文檔


二: 確定需要的技術, java圖像界面主要使用awt和swing

swing裡面的控制項比較豐富, 且功能強大 .


三: 效果圖片

importjava.awt.*;
importjava.awt.event.*;
importjava.io.*;
importjavax.swing.*;
//定義一個主窗口類
{
publicstaticfinalStringFILE_PATH="c:\print.txt";//常量,用於指定信息的保存路徑
//定義主要的組件
privatefinalJTextFieldjtf1,jtf2,jtf3;
privatefinalJCheckBoxjcb1,jcb2,jcb3;
privatefinalJRadioButtonjrb1,jrb2;

publicMainFrame(){
setTitle("信息提交窗口");//設置窗口標題
setSize(350,320);//設置窗口大小
setLocationRelativeTo(null);//讓窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);//當主窗口關閉的時候退出jvm虛擬機
JPaneljp=newJPanel(newGridLayout(5,1,2,1));//定義主顯示面板,布局為表格布局5行1列,水平間距2,垂直間距1

JPaneljp1=newJPanel();//第一行的組件面板
JLabeljl1=newJLabel("姓名");
jtf1=newJTextField(10);
jp1.add(jl1);
jp1.add(jtf1);

JPaneljp2=newJPanel();//第二行的組件面板
JLabeljl2=newJLabel("學號");
jtf2=newJTextField(10);
jp2.add(jl2);
jp2.add(jtf2);

JPaneljp3=newJPanel();//第三行的組件面板
JLabeljl3=newJLabel("性別");
jrb1=newJRadioButton("男");
jrb2=newJRadioButton("女");
jrb1.setSelected(true);
ButtonGroupbgs=newButtonGroup();
bgs.add(jrb1);
bgs.add(jrb2);
jp3.add(jl3);
jp3.add(jrb1);
jp3.add(jrb2);

JPaneljp4=newJPanel();//第四行的組件面板
JLabeljl4=newJLabel("選擇愛好");
jcb1=newJCheckBox("游泳");
jcb2=newJCheckBox("籃球");
jcb3=newJCheckBox("跑步");
jp4.add(jl4);
jp4.add(jcb1);
jp4.add(jcb2);
jp4.add(jcb3);

JPaneljp5=newJPanel();//第五行的組件面板
JLabeljl5=newJLabel("自我介紹");
jtf3=newJTextField(22);
jp5.add(jl5);
jp5.add(jtf3);

//添加到主顯示面板
jp.add(jp1);
jp.add(jp2);
jp.add(jp3);
jp.add(jp4);
jp.add(jp5);
jp.setBorder(BorderFactory.createTitledBorder("填寫資料"));//設置主顯示面板的邊框

JButtonjb=newJButton("跳轉到列印頁");
jb.addActionListener(newActionListener(){//按鈕事件

publicvoidactionPerformed(ActionEvente){//獲取組件的信息
StringBuildersb=newStringBuilder();//用於連接信息
Stringname=jtf1.getText();
sb.append("姓名:"+name+" ");
Stringnum=jtf2.getText();
sb.append("學號:"+num+" ");
Stringsex;
if(jrb1.isSelected()){
sex="男";
}else{
sex="女";
}
sb.append("性別:"+sex+" ");
Stringaihao="";
if(jcb1.isSelected()){
aihao+=jcb1.getText();
}
if(jcb2.isSelected()){
aihao+=""+jcb2.getText();
}
if(jcb3.isSelected()){
aihao+=""+jcb3.getText();
}
sb.append("愛好:"+aihao+" ");
Stringjieshao=jtf3.getText();
sb.append("自我介紹:"+jieshao+" ");
newPrintDailog(sb.toString(),FILE_PATH).setVisible(true);//打開列印頁面,並設置為可見
}
});

getContentPane().add(newJLabel("信息填寫",JLabel.CENTER),BorderLayout.NORTH);
getContentPane().add(jp);
getContentPane().add(jb,BorderLayout.SOUTH);
}

publicstaticvoidmain(String[]args){
newMainFrame().setVisible(true);
}
}

//定義一個對話框窗口類
{
Stringinfo;//用於接受信息
StringfilePath;//文檔的路徑
privatefinalJLabeljl2;
publicPrintDailog(Stringinfo,finalStringfilePath){
this.info=info;
this.filePath=filePath;
setModal(true);//模態為真,如果不關閉這個對話框,那麼無法點擊其他窗口
setTitle("信息列印頁");//設置列印窗口的標題
setSize(300,320);//設置列印窗口的大小
setLocationRelativeTo(null);//設置列印窗口居中
setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);//當點擊關閉按鈕時,該窗口銷毀
JLabeljl1=newJLabel("信息列印顯示",JLabel.CENTER);
JTextAreajta=newJTextArea(info);
jta.setEditable(false);//不可編輯
jta.setLineWrap(true);//自動換行
JScrollPanejsp=newJScrollPane(jta);
jsp.setBorder(BorderFactory.createTitledBorder("信息"));

JButtonjb1=newJButton("列印");
JPaneljp=newJPanel(newGridLayout(2,1));
JPaneljp1=newJPanel();
jp1.add(jb1);

JPaneljp2=newJPanel();
jl2=newJLabel();
jp2.add(jl2);

jp.add(jp1);
jp.add(jp2);
add(jl1,BorderLayout.NORTH);
add(jsp);
add(jp,BorderLayout.SOUTH);

jb1.addActionListener(newActionListener(){//點擊列印的按鈕的事件
publicvoidactionPerformed(ActionEvente){
saveToFile();//信息列印到了文檔
jl2.setText("信息已經列印到"+filePath);//顯示出來
jl2.setForeground(Color.RED);//為了醒目設置顏色為紅色
}
});

}

privatevoidsaveToFile(){//該方法用於保存信息到文檔
try{
BufferedWriterbw=newBufferedWriter(newOutputStreamWriter(newFileOutputStream(filePath),"UTF-8"));
bw.write(info);
bw.close();
}catch(Exceptione){
e.printStackTrace();
}
}
}


五: 拓展

java 製作圖像界面比較簡單, 只需要熟練的掌握三大布局(流布局 表格布局 邊界布局)和常用組件 , 就能製作出比較復雜的界面 . 所以理清業務邏輯, 才是重點

❻ 醫保網裡面的列印插件是Java的但是安裝了還是不能列印!麻煩看看!

可能存在以下原因:

  1. ControlUtil.java文件存在報錯信息(編譯異常);

  2. 確實ControlUtil.class文件,需要重新編譯

❼ 國家稅務局天津市電子稅務局列印顯示頁面異常

向客服反饋。
列印異常的處理方法: 現在很多列印功能是通過調用java插件來實現的,如果java功能異常,就會導致網頁列印的時候出現各種報錯。 如圖所示。 檢查瀏覽器java控制項狀態:打開IE瀏覽器,點擊菜單欄的工具,在」工具--管理載入項「里看到。 如圖所示,啟用圖中的兩項java載入項,如果此類有三項則亦全部啟用。 之後再去關閉一下彈出 窗口阻止程序 ,點擊菜單欄的工具,在」工具--彈出 窗口阻止程序 「可以操作,如圖所示。 一般到此就可以解決列印問題了,最好在測試列印頁面功能測試一下,以免導致列印的東西被銷號卻未列印。 部分人反應瀏覽器無菜單欄,我再補充一下,在圖中所示的紅色區域內滑鼠右鍵單擊,會彈出圖示小窗,在菜單欄處打鉤即可出現菜單欄了。

❽ java 有哪些免費報表工具啊,可以報表列印。

推薦潤乾報表,潤乾報表今年有推出免費版,可以從潤乾報表官網下載試用

潤乾報表設計頁面是類似excel的,而且內置了很多常用函數,更便於繪制報表。而且提供了三種列印方式:applet、pdf、flash供用戶選擇使用,批量列印方面支持applet和pdf兩種列印方式。

閱讀全文

與列印插件java相關的資料

熱點內容
上汽榮威app在哪裡查詢 瀏覽:901
冰櫃壓縮機溫度108 瀏覽:718
阿里雲郵smtp伺服器地址 瀏覽:250
解壓館認知理解 瀏覽:239
為什麼使用非官方伺服器會封號 瀏覽:9
佛山加密文檔軟體 瀏覽:813
港式5張梭哈源碼 瀏覽:241
數據中心pdf 瀏覽:524
crf源碼解析 瀏覽:853
伺服器軟體開發是什麼意思 瀏覽:941
刪除彩信android 瀏覽:862
元宵節猜燈謎h5源碼 瀏覽:69
樂培生app怎麼綁定 瀏覽:762
視頻壓縮不清楚怎麼說 瀏覽:525
加好友伺服器繁忙是怎麼回事 瀏覽:381
怎麼解綁app的支付寶賬號 瀏覽:913
ip地址伺服器不可用怎麼解決方法 瀏覽:185
為什麼軟體需要伺服器 瀏覽:65
redis操作命令大全 瀏覽:599
python字元串重復索引 瀏覽:964