<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)航:
     
    主站蜘蛛池模板: 国产一级一片免费播放i| 久久久久久免费视频| 亚洲精品无码av天堂| 国产精品亚洲一区二区三区久久 | 成在人线av无码免费高潮水| 日韩精品成人亚洲专区| 黄网站色成年片大免费高清| 国产成人啪精品视频免费网| 高潮毛片无遮挡高清免费| www亚洲一级视频com| 成人网站免费大全日韩国产| 国产亚洲综合成人91精品| 无码国产精品一区二区免费模式| 亚洲国语精品自产拍在线观看 | 精品国产精品久久一区免费式| 亚洲欧洲免费无码| va天堂va亚洲va影视中文字幕| 91免费资源网站入口| 色五月五月丁香亚洲综合网| 亚洲国产一成久久精品国产成人综合 | 亚洲av无码专区国产乱码在线观看| 韩日电影在线播放免费版| 亚洲AV无码成人精品区天堂| 中文字幕无码播放免费| 青草久久精品亚洲综合专区| 在线观看亚洲精品福利片| 亚洲第一网站免费视频| 亚洲国产精华液2020| 国产亚洲精品免费视频播放| 69视频免费观看l| 在线精品亚洲一区二区| 亚洲日本一区二区一本一道| 久久久免费精品re6| 亚洲国产精品无码久久九九大片 | 亚洲毛片免费视频| 看全色黄大色大片免费久久| 两个人看的www免费高清| 亚洲av无码不卡久久| 亚洲精品视频免费观看| 6080午夜一级毛片免费看| 黄页网站在线观看免费|