2017-04-19 69 views
1

我在我的Java應用程序中遇到問題。也就是說,在嘗試將對象添加到jComboBox時出現錯誤。無法將對象添加到jComboBox; addItem(...)方法只接受字符串

incompatible types: Radnik cannot be converted to String 

其中Radnik是我試圖添加的類的名稱。

這發生在我以前,它似乎是IDE或JDK的問題,因爲它似乎只發生在我正在工作的應用程序,但是當我在另一個應用程序中做同樣的事情時,它工作正常。 我正在Netbeans的最新版本和JDK 1.8工作

我不認爲我需要任何額外的庫,我的Radnik類有它的toString()方法重寫。

,我嘗試將其添加到組合框代碼:

private void popuniComboR(List<Radnik> lr){ 
    jcmbRadnik.removeAllItems(); 
    for (Radnik r : lr) { 
     jcmbVrstaPos.addItem(r); 
    } 
} 

這給了我一個錯誤。

+1

如果沒有更多的上下文,真的很難說出什麼問題。例如。 「jcmbVrstaPos」的定義是什麼? – radoh

+0

@radoh'jcmbVrstaPos'是我的組合框的名稱。 'Radnik'是一個POJO,代表一名工人。 – solstinger

+2

我明白了。但是它是如何定義的?作爲'JComboBox '?要麼...?提供[最小,完整和可驗證示例](http://stackoverflow.com/help/mcve)。 – radoh

回答

2

理想的情況下,改變你的組合框的定義,所以它更容易與之交互:

private javax.swing.JComboBox<Radnik> jcmbRadnik; 

或者,你可以用字符串組合框工作,但那麼你就需要轉換的rString

jcmbVrstaPos.addItem(r.toString()); 
+0

Boolseye!我甚至沒有考慮站在我的組合框聲明旁邊的。 – solstinger

相關問題