用Java繪製K線圖

來源:互聯網
上載者:User

Java語言中的Applet(Java小程式)和Application(Java應用程式)是在結構和功能上都存在很大差異的兩種不同的編程方式。Applet應用於Web頁上,可做出多姿多彩的頁面特效,給網站增輝添色;Application則與其他程式設計語言(如VB、VC)一樣,可編製各種應用程式。

本文要討論的是第一種情況,在Web頁上用Java Applet繪製K線圖。

K線是股市行情分析中的一種參數指標,用股票每日的開盤價、最高價、最低價、收盤價及成交量等資料進行作圖,配合五日、十日均線便可反映出一個階段內該支股票的漲跌走勢。

Java Applet所做的K線圖多應用於證券類型的網站,以方便網上股民的分析操作。不過由於我國網速的關係,目前有些證券類網站把K線圖做成了圖片以節省下載的時間。當然,其繪製K線所用的工具(Java Applet)及繪製方法還是相同的。

在編寫繪製K線的Java Applet時,有幾處關鍵問題要解決,即:1)多線程的使用;2)布局管理器的選擇;3)資料輸入、輸出資料流的應用;4)設定、監聽滑鼠與鍵盤事件。

下面通過一個執行個體,來詳細闡述整個編程過程和方法。

一、使用多線程

一個完整的Java Applet包含四個方法,Init()、Start()、Stop()、Destroy()(即:初始化、開始、停止、清除),構成一個完整的生命週期,其運行次序也是由上而下順序執行。

在繪製K線圖的過程中,除了要繪製表單及代表股票升降的陰線、陽線矩形外,還要監聽滑鼠事件並同時繪製一個自由移動的“十字”遊標,來定位顯示所檢索股票每日的各種價格數值(如開盤價、收盤價等);這時,為了避免閃爍和減少重新計算的等待時間,除了重繪跟隨滑鼠移動的“十字”遊標外,對頁面的布局及陰線、陽線矩形等不進行重繪;這就需要應用多線程來完成該項任務。

1.關於多線程的一些基本概念:

多線程實際上就是啟動另一個進程,其啟動並執行過程獨立於主程式之外,並從主程式的Start()方法載入、由Run()方法調用執行。實現多線程的方法有兩種,即:建立Thread類的子類(類的繼承)和實現runnable介面。

為便於使用,Java把所有有關線程的功能封裝成Java類庫中的一個類:Java.lang.Thread。通過這個類,Java可以建立、控制和終止線程,完成有關多線程的所有操作。

在Java語言中,一個子類只能繼承一個超類(父類),由於我們所要編寫的Java Applet是應用於網頁中的,首先必須繼承瀏覽器類(java.applet);因此,在本例中我們通過實現runnable介面的方法來實現多線程,實現的語句如下:

public class StockApplet extends java.applet.Applet implements Runnable

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.