我創建了五個宏,它們一步一步地有效地滿足了我的研究需求。我想在一個有效的插件中加入這些宏。所有路徑導致java編程。但我想知道,如果有一種方法,我可以創建「用戶界面」這樣的:imagej中的宏「用戶界面」
通過點擊一個按鈕,宏將運行。我會指定一個或兩個變量(插入最後一個環的年份...)。
我創建了五個宏,它們一步一步地有效地滿足了我的研究需求。我想在一個有效的插件中加入這些宏。所有路徑導致java編程。但我想知道,如果有一種方法,我可以創建「用戶界面」這樣的:imagej中的宏「用戶界面」
通過點擊一個按鈕,宏將運行。我會指定一個或兩個變量(插入最後一個環的年份...)。
您可以使用Dialog.*
宏功能。示例請參閱DialogDemo macro。
Dialog.create("Program");
Dialog.addChoice("Type:", newArray("A", "B","C"));
Dialog.show();
type = Dialog.getChoice();
if (type=="A"){
runMacro("A");
} else {
if(type=="B"){
runMacro("B");
} else {
if (type=="C"){
runMacro("C")
}
}
}
////to start from the beginning
runMacro("Program")
所以,正如你所看到的,我的小程序非常簡單。通過選擇操作,特定的宏運行。
在我的「宏A」中,必須定義特定的變量;如:哪一年砍掉一棵樹
p = getNumber("The year of outmost ring?", 2020)
我想定義這些變量,在選擇動作之前(使用對話框)。它只是更友好...
我同意Java編程;如果我想要認真接觸一些限制較少的軟件創建選項...
您的解決方案非常有用,但我正在努力: 1)我無法定義將自動識別的「全局」變量由宏... 2)沒有»按鈕«選項(Dialog.addButton);我必須使用對話框(Dialog.addChoices),然後運行Macros ... 建議? – JerryTheForester
我不確定我是否理解了您所遇到的問題,而沒有更多細節,並且/或者您在某處發佈了代碼。從你原來的問題,加入宏,考慮使每個「宏」成爲一個可以從多個宏重用的函數。爲了在對話框中添加按鈕,我知道你不想聽到這個,但是應該考慮編寫一個Java插件。 ImageJ 1.x的宏語言不是用來構建非常漂亮的對話框(並且在對話框中添加一個額外的按鈕屬於該類別)。 – ctrueden