[英]How can I make a textbox function in processing?
我希望為用戶輸入約10個文本框,然后將該值存儲為變量。 無論如何,要使用參數作為位置來制作文本框功能?
是的,使用庫controlP5可以實現 。
import controlP5.*;
ControlP5 cp5;
String[] textfieldNames = {"tf1", "tf2", "tf3", "tf4", "tf5"};
void setup() {
size(700,400);
PFont font = createFont("arial",20);
cp5 = new ControlP5(this);
int y = 20;
int spacing = 60;
for(String name: textfieldNames){
cp5.addTextfield(name)
.setPosition(20,y)
.setSize(100,40)
.setFont(font)
.setFocus(true)
.setColor(color(255,0,0))
;
y += spacing;
}
textFont(font);
}
void draw() {
background(0);
}
void controlEvent(ControlEvent theEvent) {
if(theEvent.isAssignableFrom(Textfield.class)) {
println("controlEvent: accessing a string from controller '"
+theEvent.getName()+"': "
+theEvent.getStringValue()
);
}
}
如果您是熟練的Java程序員,則可以考慮使用Swing庫 (主要的Java GUI小部件工具箱)。 但是,您也會發現自己正在處理Processing核心代碼。 不要那樣做
使用Java代碼[在處理草圖中]的主要規則:您不能使用大多數AWT或Swing(基於AWT構建),因為它會干擾圖形模型。 如果要向項目添加滾動條和按鈕,則應使用“處理”代碼來制作它們,或將“處理”小程序嵌入另一個Swing或AWT應用程序中。 即使它們似乎起作用,當您嘗試在其他操作系統或其他Java版本上運行時,此類草圖通常也會損壞。 – 處理常見問題
如果您不是Java程序員,請堅持使用Processing庫或創建自己的文本字段類。
流行的ControlP5 GUI庫具有用於文本字段和文本區域的內置類。 到目前為止,此版本已經過處理2.0b7的測試,它可能不適用於最新的2.0版本。
如果是第一次使用外部庫,請打開“處理”並通過從上方欄菜單的“導入庫...”子菜單中選擇“添加庫...”來添加貢獻的庫。
編輯:我從未嘗試過,但是Interfascia (alpha版本)也有一個文本字段類。 該文檔似乎易於閱讀,代碼也易於使用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.