我试图在MySQL表中使用JFrame
显示JLabel
中的文字,我可以获取需要显示的信息,但我无法提供该信息在JLabels
。
这是我的代码:
public void actionPerformed(ActionEvent e) {
find = new Find(txtFldTitulo.getText());
author = find.getAuthorLast()+find.getAuthorFirst();
lblResYearRev.setText(find.getYear);
lblResYearRev.setText(author);
lblResIsbnRev.setText(find.getIsbn());
lblResStatus.setText(find.getStatus());
}
我试图用来设置MySQL查询得到的值的代码是:
public Find(String title) {
...
while (resultSet.next()) {
for (int i=1;i<=numberOfColumns;i++){
switch (i) {
case 1:
setAuthorLast(resultSet.getObject( i ).toString());
break;
case 2:
setAutorFirst(resultSet.getObject( i ).toString());
break;
case 3:
setYear(resultSet.getObject( i ).toString());
break;
case 4:
setIsbn(resultSet.getObject( i ).toString());
break;
case 5:
setStatus(resultSet.getObject( i ).toString());
break;
}
}
}
但我没有在JFrame
获得任何价值,我不知道为什么。
答案 0 :(得分:0)
首先,您的方法ActionEvent
需要String
,当您调用方法时,您需要设置public Find(ActionEvent e) {
find = new Find(txtFldTitulo.getText());
txtFldTitulo.getText()
所以String
返回ActionEvent
而不是Find
您应该先调试程序。
我认为您的JLabel
方法存在问题,因为如果您询问如何设置let myArray = ["John", "Timothy", "James", "Tanmay"]
for i in myArray {
print(i) // "John", "Timothy" ...
}
的信息,那么您已经这样做了。