2013年8月19日 星期一

腳本的基礎框架

原始

1
2
3
4
5
6
public class MyScript extends ScriptCore
{
 public void init()
 {
 }
}

public class MyScript是主腳本固定的開頭,也就是一定要命名為MyScript,並且繼承(extends)ScriptCore,這樣就已經是一個可以被執行的腳本了。ScriptCore就是腳本核心,是任何MyScript一定要繼承的對象。


進化
不過這樣執行出來也只有一片空白,因為我們什麼也沒有加,之後全要靠雙手建立...有點辛苦...於是之後發展出另一種寫法...

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
lib "personal";

public class MyScript extends CustomCorePersonal
{
 public void init()
 {
  //對CustomCore_UI初始化
  CustomCore_UI_INIT();
 }
}

跟上一個很像,但是多了lib "personal";以及ScriptCore被換成了CustomCorePersonal。

lib...是引用外部程式庫的語法,表示這個腳本要引用script/library/personal下的檔案,personal裡面的檔案會有開發者自己的程式碼,以及會再引用script/library/accustomcore下的檔案,而accustomcore裡面則是一個有圖形介面的ScriptCore可以讓主腳本繼承。

於是MyScript就繼承了personal裡的CustomCorePersonal,而CustomCorePersonal又繼承了accustomcore裡的CustomCoreUI,而CustomCoreUI又繼承了ScriptCore,所以...終究...MyScript同樣繼承到了ScriptCore,又擁有了CustomCorePersonal與CustomCoreUI的能力。

MyScript 繼承 CustomCorePersonal 繼承 CustomCoreUI 繼承 ScriptCore

此時MyScript就擁有了比之前更強的功能了,我們就可以透過圖形介面在K線圖上加指標、做各種參數的設定,最後將編輯好的畫面儲存佈局、或將視窗存成範本,就可以保留這些設定重複使用,不需要再寫程式碼。


預先加上指標
若有需要在腳本中分析指標時,也可以把指標程式碼導出,再加到自己的腳本上,像是...
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
lib "personal";

public class MyScript extends CustomCorePersonal
{
 KD kd = addIdct("KD", "KD_2", new KD(""));
 public void init()
 {
  //對CustomCore_UI初始化
  CustomCore_UI_INIT();
 }
}

沒有留言:

張貼留言

本人僅以個人知識經驗分享,多所無知,難免有錯,還請見諒。