2011-06-15 67 views
0

我想在NetBeans中將控制檯應用程序與GUI結合在一起。我嘗試使用jButton進行操作。我想讓控制檯應用程序的輸出成爲一個jTextArea。在netbeans中將控制檯應用程序與GUI結合起來

控制檯應用程序中有一個稱爲private static void printBytes(byte[] data, String name)的功能。在調用該函數時必須按照以下方式執行。

printBytes(activeKey,"After permuted choice 1 table- Active key:"); 

爲此,我必須將第二個參數傳遞給文本框。我創建了名爲jTextAreata的對象,並給

printBytes(activeKey,ta.append("After permuted choice 1 table- Active key:")); 

它給了一個錯誤稱爲

不能void類型轉換成字符串。

然後我試着如下。

String a="After permuted choice 1 table- Active key:" 
printBytes(activeKey,ta.getText(a)); 

它也沒有工作。 有人請告訴我該怎麼做。我想要做的是以某種方式將我的控制檯應用程序連接到GUI並在GUI上獲取輸出。

+0

你不是想把printBytes(...)方法返回到一個String變量中嗎? – talnicolas 2011-06-15 03:04:51

+0

從頭開始創建一個真正的GUI。當然,使用非真正的OOP類的GUI模型,但不要試圖將控制檯應用程序放入GUI中,尤其是通過println顯示其輸出的GUI。 – 2011-06-15 03:14:59

回答

2

Cannot convert void type into string.告訴你到底發生了什麼問題。你調用的方法,JTextArea#append(...)不會返回一個字符串,而是將文本附加到它的顯示中,並返回任何內容,void,所以你不能將方法的結果(沒有)傳遞給你的printBytes方法需要一個String。

通過將標準輸出重定向到JTextArea中,您可以將控制檯應用程序「連接」到GUI上,但又不試圖將控制檯連接到GUI,您最好創建一個GUI應用程序是GUI的一個非GUI模型,它保存了它的邏輯,並且被編寫成可以在大多數你選擇的UI,控制檯,GUI或其他(如果存在的話)中使用。

相關問題