<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    精彩的人生

    好好工作,好好生活

    BlogJava 首頁 新隨筆 聯(lián)系 聚合 管理
      147 Posts :: 0 Stories :: 250 Comments :: 0 Trackbacks
    BIRT的chart功能似乎并不是很強大,反正在使用過程中,出現(xiàn)過編輯器不好使,被迫直接修改xml文件的情況.

    現(xiàn)在,有一個這樣的需求,就是讓Y軸的標題顯示用戶輸入的值.



    如圖所示,這個標題是在編輯/定義圖表的時候輸入的固定值,這個值不管是改成params["test"]還是reportContext.getParameter("test")都會直接返回文本,而不是表達式值.

    但是,這個文本唯一支持的動態(tài),就是本地化,那么本文將介紹如何利用resources.properties來實現(xiàn)這個標題的動態(tài)顯示

    首先,設(shè)置這個chart的resource使用<YOUR_LOCATION>/reources.properties文件

    然后,在這個properties文件中輸入test_field=Hopeshared's Test

    接著,修改這個title


    這個時候,preview的結(jié)果,title就會顯示properties文件里的內(nèi)容

    向report添加一個名為test的參數(shù),這個參數(shù)是string類型,必填項,用戶的輸入將保存到properties文件并顯示在chart中

    接著,寫個腳本,讓properties文件內(nèi)容發(fā)生變化
    在整個report的initialize方法中,寫入
     1importPackage(Packages.java.lang);
     2importPackage(Packages.java.util);
     3importPackage(Packages.java.io);
     4importPackage(Packages.java.net);
     5
     6var t_value = params["test"];
     7var prop=new Properties();
     8
     9var in_stream=new FileInputStream("<YOUR_PROPERTIES_FOLDER>/resources.properties");
    10prop.load(in_stream);
    11in_stream.close();
    12        
    13prop.put("test_field", t_value);
    14
    15var   fout=new  FileOutputStream("<YOUR_PROPERTIES_FOLDER>/resources.properties");
    16prop.store(fout,"Test Properties");
    17fout.close();
    18
    19var current = new File("<YOUR_PROPERTIES_FOLDER>");
    20
    21var cl = new URLClassLoader(new Array(current.toURL()));
    22res = ResourceBundle.getBundle("resource", Locale.getDefault(), cl);

    最后,preview一下,看看結(jié)果.

    歡迎大家告訴我其他更好的辦法來達到這個目標,謝謝!
    posted on 2007-11-12 13:20 hopeshared 閱讀(3927) 評論(4)  編輯  收藏 所屬分類: BIRT

    Feedback

    # re: BIRT.CHART: 讓Y軸標題動態(tài)修改[未登錄] 2007-11-13 16:07 hopeshared
    傻了,其實有很簡單的辦法實現(xiàn)的
    在圖上寫個腳本
    function beforeDrawAxisTitle(axis, label, icsc)
    {
    label.getCaption().setValue(icsc.getExternalContext().getScriptable().getParameterValue("test"));
    }
    就可以了,hoho  回復(fù)  更多評論
      

    # re: BIRT.CHART: 讓Y軸標題動態(tài)修改 2008-04-22 18:42 fy_kenny
    好方法,

    我初次接觸,還望前輩指點啊.  回復(fù)  更多評論
      

    # re: BIRT.CHART: 讓Y軸標題動態(tài)修改 2008-08-19 08:52 月下孤影
    你這個方法
    function beforeDrawAxisTitle(axis, label, icsc)
    {
    label.getCaption().setValue(icsc.getExternalContext().getScriptable().getParameterValue("test"));
    }

    應(yīng)該寫到哪里呢?  回復(fù)  更多評論
      

    # re: BIRT.CHART: 讓Y軸標題動態(tài)修改[未登錄] 2011-07-04 13:56 clark
    @hopeshared
    X軸好像也發(fā)生了改變,和Y軸一樣!  回復(fù)  更多評論
      


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 精品无码无人网站免费视频| 美女裸体无遮挡免费视频网站| 国产免费无码一区二区| 亚洲欧美国产国产综合一区| 一个人看的免费高清视频日本| 一级毛片免费不卡在线| 无码乱人伦一区二区亚洲| 男人天堂免费视频| 亚洲va久久久噜噜噜久久狠狠| 花蝴蝶免费视频在线观看高清版| 国产精品亚洲片在线| 国产精品免费AV片在线观看| 亚洲成色999久久网站| 91福利视频免费| 亚洲一卡2卡3卡4卡国产网站 | 免费精品视频在线| 久久久久亚洲精品中文字幕| 两个人日本WWW免费版| 久久99国产亚洲精品观看| 69av免费视频| www亚洲精品久久久乳| 亚洲一区二区精品视频| 国产婷婷成人久久Av免费高清 | 日韩精品免费一区二区三区| 亚洲国产美女精品久久久久∴| 日本高清不卡aⅴ免费网站| 亚洲一二成人精品区| 亚洲第一精品福利| 免费在线观看h片| 色婷婷六月亚洲综合香蕉| 性做久久久久久久免费看| 男性gay黄免费网站| 亚洲成AV人片在线观看无码 | 三级黄色在线免费观看| 久久久久亚洲av无码专区喷水| 毛片大全免费观看| 久久久WWW免费人成精品| 亚洲婷婷在线视频| 亚洲AⅤ优女AV综合久久久| 免费无码VA一区二区三区| 亚洲色大成网站WWW久久九九|