我在java swing中創建了一個GUI,但是我爲該GUI的功能製作了很多python腳本,有沒有可以使用我的python腳本在Java Swing GUI界面中顯示內容?謝謝!在Java GUI中使用Python
1
A
回答
3
退房的Jython(http://www.jython.org/)
這是Java中的一個Python實現。
從理論上說,你不應該有改變你的Python代碼(如果它「品質優良」),但在實踐中,我建議你將不得不在這裏和那裏做一些改變。我不親自使用Jython,但所有各種python實現通常或多或少兼容,但不完全相同。您將無法使用依賴於C ABI的Python庫,但純Python腳本應該可以工作。
0
您可能不想爲此應用程序的最終版本執行此操作,但對於快速而骯髒的方法,您可以在java中運行外部程序並捕獲輸出。 (之前我曾經使用過這個功能,當時我正在將一個程序從python移植到java的過程中,並希望在java後端完成之前查看java前端是否工作,而不用擔心替換CPython模塊。)這個示例程序運行Python程序test.py
並打印輸出:
import java.io.*;
class Jexec{
public void Jexec(){}
private String exec(String execStr){
try{
// run process and capture stdout
Process p = Runtime.getRuntime().exec(execStr);
InputStream s = p.getInputStream();
// convert stdout to a string
BufferedReader br = new BufferedReader(new InputStreamReader(s));
StringBuffer sb = new StringBuffer();
String line;
while ((line = br.readLine()) != null) {
sb.append(line).append("\n");
}
String output = sb.toString();
p.destroy();
return output.toString();
}catch(Exception e){
//actually handle the error here
e.printStackTrace();
return String.format("*** Running \"%s\" failed. ***",execStr);
}
}
public static void main(String[] args){
Jexec je = new Jexec();
System.out.println(je.exec("python test.py")); //in your case, you would use the output instead of just printing it
}
}
這是超級片狀,所以,再一次,我只用它來臨時測試目的。但對於這些情況,這真的很有幫助。
+0
我發現了一個更好的解決方案,jymatisse,一個Swing GUI生成器,但可以在Python的支持代碼,http://javaforge.com/project/11 – enginefree 2012-07-16 18:20:15
相關問題
- 1. Java中使用Swing的GUI
- 2. 在Linux中使用Python創建GUI
- 3. 在python中使用tkinter來製作gui
- 4. 如何在java中使用GUI?
- 5. Java - 在GUI中使用線程
- 6. 在Java GUI中使用線程數
- 7. 在java中使用xml的GUI
- 8. 當使用Java GUI
- 9. Java GUI(使用FXML):
- 10. 來自Java的Python GUI
- 11. 在Python中使用java類
- 12. 使用GridBagLayout構建GUI(Java)
- 13. Java GUI,需要使用actionlistener?
- 14. 使用SwingWorker更新Java Gui
- 15. 的Java GUI使用的JFrame
- 16. Python中的GUI
- 17. 在GUI上使用膠水,java
- 18. 如何使用tkinter在Python中使用GUI編程計算器?
- 19. 按鈕在Java GUI(Swing)中使用鼠標後即可使用?
- 20. 使Python GUI有效
- 21. 在Python類中使用self(在Nuke製作GUI中)
- 22. 在Java GUI
- 23. 在eclipse中建立Python GUI?
- 24. 在python編程中的GUI
- 25. 在Java GUI中更新JTree
- 26. 在Java中創建GUI
- 27. 在Java GUI中嵌入Excel
- 28. 在Java中的GUI線程
- 29. 如何禁用GUI按鈕在Java中
- 30. 在GUI matlab中使用specgram
我需要轉換所有腳本嗎? – enginefree 2012-07-16 15:50:05
@ user1510602這是Java中的python實現。查看他們記錄的差異。 – Marcin 2012-07-16 15:51:48
@ user1510602:在已編輯的回覆中回答。 :) – Arafangion 2012-07-16 15:52:26