我似乎无法在运行时使用此语句。
textWords.setText(item);
textWords是一个对象,setText是一个方法,item是一个整数。
有谁熟悉这个?我似乎无法在运行时将其工作。
没有错误,在运行期间它什么也没做!
public class frmMain extends javax.swing.JFrame {
public frmMain() {
initComponents();
textWords.append("Bryan"); // THIS works!! but this only //happens when the form is initialized, not very usefull
}
//Other pre generated code here.
private void displayItem() {
//Method I created to help me catch data
// and make a call to this form.
// none of these are working.
txtTest.setText(item);
textWords.setText(item);
textWords.insert("Bryan",1);
textWords.append("number");
}
答案 0 :(得分:0)
我猜你需要的是:
textWords.setText(Integer.toString(item));
即。你需要将'item'(整数)转换为String。你可以这样做:
textWords.setText("" + item);
答案 1 :(得分:0)
您确定要在EDT上进行更改吗?在任何其他线程上更改GUI组件可能会产生未定义的结果。
尝试在displayItem()的开头添加此代码:
if (!SwingUtilities.isEventDispatchThread()) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
displayItem();
}
});
return;
}
如果对EDT上的displayItem的调用没有,它会创建一个runnable并在EDT上重新调整它。
另见http://java.sun.com/docs/books/tutorial/uiswing/concurrency/index.html