• <menu id="w2i4a"></menu>
  • logo Teechart應用技術詳解——快速圖表制作工具

    文檔首頁>>Teechart應用技術詳解——快速圖表制作工具>>Teechart圖表應用技術詳解—第二章之Teechart組件的應用實例:對象觀察器與打印預覽

    Teechart圖表應用技術詳解—第二章之Teechart組件的應用實例:對象觀察器與打印預覽


        Steema公司和慧都科技針對中國市場聯(lián)合推出中文版TeeChart for .NET圖表控件,一共漢化2000個詞條(17000個單詞),漢化文檔35000個單詞,包括控件設計時與運行時的界面漢化以及控件使用向導文檔的漢化,總漢化90%以上!

        TeeChart for .NET中文版讓您在使用和學習上沒有任何語言障礙,至少可以節(jié)省30%的開發(fā)時間。TeeChart for .NET中文版具有易上手,使用方便,穩(wěn)定性好,性價比高,價格優(yōu)惠等優(yōu)勢,并且針對Web應用提供無限制服務器分發(fā)授權方式,非常有利于產品集成。

    點擊下載TeeChart for .NET最新試用版    


    Teechart組件的應用實例

        Steema為了充分發(fā)揮TeeChart頁圖表組件的功能,將圖表編輯器的選項卡進行了拆分,構成獨立的可視或非可視組件,由程序設計員根據(jù)用戶的功能要求進行重新組合,以滿足用戶需要。

    對象觀察器與打印預覽

    演示: ComboFlat、TeeInspactor和ChartPreviewer組件。

    功能:本例通過對象觀察器組件Teelnspactor和組合列表框組件 ComboFlat,演示如何實現(xiàn)類似Delphi的對象觀察窗口Object Inspector窗口的功能,以方便應用程序與用戶的交流。

    設計:

    1. 按表1在窗體中放置有關組件后,設定ComboFlat1組件的Items屬性的每行值分別為:蘋果、橘子、梨子、葡萄、甘蔗、西瓜,并設置ItemIndex屬性為0。

    2. 在ComboFlat1的OnChange事件中加入下列代碼,使得圖表組件ComboFlat1的選擇顯示指定內容。

      Series1.Clear;
      case ComboFlat1.ItemIndex of
      0:Series1.AddXY(1,300,'蘋果');
      1:Series1.AddXY(1,280,'橘子');
      2:Series1.AddXY(1,450,'梨子');
      3:Series1.AddXY(1,340,'葡萄');
      4:Series1.AddXY(1,780,'甘蔗')
      5:Series1.AddXY(1,890,'西瓜');
      6:Series1.AddXY(1,600,'柿子');
      end;
    3. 選中對象觀察器組件Teelnspactor1,單擊對象觀察器窗口 Object Inspector的Items屬性右邊帶有三個小黑點的按鈕,彈出圖1中的Edit Teelnspactor.Items...窗口,然后單擊左上角的 Add New按鈕,或在窗口區(qū)域右擊,在彈出菜單中選擇Add項,這時圖1中上部的Object Inspector窗口顯示需要增加項目的標題、類型、設定值等。此時可在這兩個窗口之間切換,完成需要設定的項目,最后構成的對象觀察窗口外觀,如圖2所示。

      圖1

      對象編輯窗口

      圖2

      Teelnspactor組件設計階段的外觀

    4. 為使對象觀察窗口顯示內容和對應組件設定一致,除在設計階段的狀態(tài)二者保持一致外,在運行階段也要保證屬性值的改變也對應組件發(fā)生變化,需要加入下列代碼:

      Chart1.View3D:=TeeInspactor1 Items [0]. Value;                 //3D
      Series1.Marks.Visible:=TeeInspactor1 Items[1].value;    //標簽
      Chart1.Legend.Visible:=TeeInspactorl Items[2].Value;    //圖例
      Chart1.BottomAxis.Title.Caption:=TeeInspactor1. Items[3].Value;//坐標
      Chart1.Title.Text.Text:=TeeInspactor1.Items[6].value;    //標題
      Chart1.Title.Font.Color:=TeeInspactor1.Items[5].value;   //標題顏色

      從上述代碼可以看出,一是Teelnspactor1組件的值是和所設定對象的值類型是匹配的,二是 Teelnspactor1組件根據(jù)值的類型自動設定顯示外觀,程序不需做太多干預,如設定字體顏色只需直接單擊顏色框就會打開顏色對話框,而不再需要程序員增加顏色對話框組件以及編寫調用代碼,明顯減少程序的工作量,提高系統(tǒng)開發(fā)速度。

    5. 圖表組件有關參數(shù)設定可在設計階段使用圖表編輯器參照上述代碼設定指定內容。

    6. 打印預覽組件ChartPreviewer1只需設定Chart特性為Chart1,使預覽窗口與指定圖表組件關聯(lián),然后加入下列代碼:

      ChartPreviewer1.Execute;

      就可實現(xiàn)打印預覽,打印預覽窗口如圖3所示:

      圖3

      打印預覽窗口

       在圖3中Printer編輯框用來選擇打印機:Orientation組框設定橫/豎打印方式;Margins設定打印邊界,以百分比表示:其他幾項用于設定打印質量。Setup按鈕設定打印機有關參數(shù),Print按鈕執(zhí)行打印。

    設置:如下所示

    組件名稱屬性名設定值備注
    TChartNameChart1圖表組件
    TComboFlatNameComboFlat1組合框組件
    Items

    蘋果、橘子等

    ItemsIndex0
    TTeeInspactorNameTeeInspactor1圖表觀察器設定
    Items看代碼
    TChartPreviewerNameChartPreviewer1圖表預覽組件
    ChartChart1
    TButtonNameButton1關閉窗口按鈕
    Caption&R.返回
    TButtonNameButton1調用打印預覽組件按鈕
    Caption&P.打印
    TLabelName
    Label1標簽組件顯示“種類”
    Caption種類


    技巧:

        ChartPreviewer組件可以方便地輸出指定圖表,利用Teelnspactor對象觀察組件可以作為系統(tǒng)運行過程中進行人機交互的一種方式。另外,可參看后續(xù)章節(jié)有關打印與預覽部分的內容。

    界面:程序運行階段的界面如下所示。

    圖4

    組件運行階段界面.jpg

      下一節(jié)我們將會介紹Teechart組件的應用實例:多圖表打印預覽。將會有演示,功能,設計和技巧四個方面的介紹。如果有對Teechart圖表感興趣的朋友,可以多多關注本教程,并且歡迎在評論區(qū)留言。

    相關資料推薦:

    上一章:Teechart組件的應用實例:圖表滾動棒與頁面導航組件

    Teechart 2019資源合集

    Teechart 2018資源合集 


        現(xiàn)TeeChart for .NETTeeChart for JavaScript/HTML5,TeeChart for Xamarin.Android等均已加入在線訂購,現(xiàn)在搶購可立享優(yōu)惠!

        關注慧聚IT微信公眾號???,了解產品的最新動態(tài)及最新資訊。

    dd2629f30d553d56ccaf7164fdcb784e-sz_28327.webp.jpg

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();