<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軸的標(biāo)題顯示用戶輸入的值.



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

    但是,這個文本唯一支持的動態(tài),就是本地化,那么本文將介紹如何利用resources.properties來實現(xiàn)這個標(biāo)題的動態(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é)果.

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

    Feedback

    # re: BIRT.CHART: 讓Y軸標(biāo)題動態(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軸標(biāo)題動態(tài)修改 2008-04-22 18:42 fy_kenny
    好方法,

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

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


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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲色大成网站WWW国产| 亚洲av日韩av激情亚洲| 99热亚洲色精品国产88| 99久久99久久精品免费观看| 国产亚洲精aa成人网站| 特黄特色大片免费| 国产男女猛烈无遮挡免费视频网站| 亚洲精品女同中文字幕| 在线观看永久免费视频网站| 亚洲人成网站免费播放| 全免费a级毛片免费看无码| 国产一区二区免费| 亚洲一区AV无码少妇电影☆| igao激情在线视频免费| 人人狠狠综合久久亚洲88| 特级无码毛片免费视频尤物| 亚洲综合无码一区二区| 美女视频黄的全免费视频网站| 在线观看日本亚洲一区| 国产成人免费片在线观看| 美女免费视频一区二区三区| 亚洲视频在线一区二区| 久久免费精品一区二区| 亚洲精品福利网站| 日韩免费无砖专区2020狼| 一区二区三区免费高清视频| 亚洲va久久久噜噜噜久久狠狠| 亚洲AV成人无码久久WWW| 免费女人18毛片a级毛片视频| jizz免费观看| 亚洲国产精品综合久久网各| 午夜一级免费视频| 久久久久国色AV免费观看| 亚洲综合久久久久久中文字幕| 成人激情免费视频| 91亚洲一区二区在线观看不卡| 日韩在线免费视频| 免费人成网站永久| 久久亚洲日韩看片无码| 国产成人高清精品免费鸭子| 性xxxx视频免费播放直播|