2013-02-25 26 views
0
產生的JavaScript

我有以下monkeytalk文件作爲一個概念證明,這水龍頭正確的屏幕區域:使用MonkeyTalk與EAGLView

EAGLView * Drag 40 60 40 60 
EAGLView * Drag 269 274 36 68 

這運行正常,當我嘗試將其導出到一個javascript文件我得到以下幾點:

load("libs/PoC.js"); 


PoC.connect.prototype.run = function() { 

    this.app.eAGLView().drag("40", "60", "40", "60"); 
    this.app.eAGLView().drag("269", "274", "36", "68"); 
}; 
然而

爲了這個,我得到:

result: ERROR : sun.org.mozilla.javascript.internal.EcmaError: TypeError: Cannot find function eAGLView. (connect.js#6) in connect.js 

我不要以爲任何人都可以幫助我從JavaScript訪問EAGLView?我想從一個測試框架驅動monkeytalk,我已經開發了很多測試,並且有javascript支持,所以我真的很想得到這個工作...

回答

0

這是一個問題,因爲javascript沒有任何非標準對象的函數。解決方案是將類(本例中爲EAGLView)更改爲繼承的類(在本例中可能爲View)。

所以得到這個例子中工作,你可以使用:

this.app.view("MonkeyID").drag();

然而,這將要求MonkeyID是唯一的 - 你可以找到更多關於獲得一個獨特的MonkeyID here

+0

它結果發現Unity的'View'是我試圖測試的應用程序的索引#2 - 我的第一個嘗試是更改爲View而不是EAGLView,但不知道如何獲取MonkeyID - 你知道嗎?無論如何,一旦你知道索引獲取文本MonkeyID? – theheadofabroom 2013-03-01 15:36:50

+0

您是否嘗試過使用[組件樹](https://www.gorillalogic.com/monkeytalk-documentation/monkeytalk-user-guide/component-tree)? – Sperr 2013-03-05 17:19:06

+0

不幸的是,我測試的Unity項目是空的 – theheadofabroom 2013-03-05 17:59:09