程序主要是实现数据库管理
主界面显示数据库的全部记录
有添加功能事件处理过程:
addbtn=new Button(panel,SWT.NONE);
addbtn.setText("添加");
addbtn.addSelectionListener(new SelectionAdapter(){
public void widgetSelected(SelectionEvent event){
newaddscheduler=new Addscheduler(display);///子界面 数据的输入界面
AllBean ab=new AllBean();
// scheduler_tableViewer.setContentProvider(new ContentProvider());
// scheduler_tableViewer.setLabelProvider(new TableLabelProvider());
scheduler_tableViewer.setInput(ab.getschedulers());
scheduler_tableViewer.refresh();
}
});
子界面的退出按钮只有 shell.dispose();我不知道哪里错了呀...弄了一个早上..完全找不到北...因为它提示的是这个异常..我还尝试过加上被注释掉的那两种代码..可是添加后异常就变成" org.eclipse.swt.SWTException: Widget is disposed...到底是什么问题呢? 我刚刚开始学SWT..先谢谢帮忙...
主界面显示数据库的全部记录
有添加功能事件处理过程:
addbtn=new Button(panel,SWT.NONE);
addbtn.setText("添加");
addbtn.addSelectionListener(new SelectionAdapter(){
public void widgetSelected(SelectionEvent event){
newaddscheduler=new Addscheduler(display);///子界面 数据的输入界面
AllBean ab=new AllBean();
// scheduler_tableViewer.setContentProvider(new ContentProvider());
// scheduler_tableViewer.setLabelProvider(new TableLabelProvider());
scheduler_tableViewer.setInput(ab.getschedulers());
scheduler_tableViewer.refresh();
}
});
子界面的退出按钮只有 shell.dispose();我不知道哪里错了呀...弄了一个早上..完全找不到北...因为它提示的是这个异常..我还尝试过加上被注释掉的那两种代码..可是添加后异常就变成" org.eclipse.swt.SWTException: Widget is disposed...到底是什么问题呢? 我刚刚开始学SWT..先谢谢帮忙...
应该是scheduler_tableViewer.setInput(ab.getschedulers()); 吧!
org.eclipse.swt.SWTException: Widget is disposed
是因为你的对象已经销毁了,你不能对已经销毁的对象进行任何操作!
这是JFace的基础
最好用 .setVisible(boolean);
应该是scheduler_tableViewer.setInput(ab.getschedulers()); 吧!
我也知道是这句造成的..可是我后来把那两句代码添加上后,就变成了第二种异常..
第二种异常我就不知道怎么解决了.. scheduler_tableViewer.setContentProvider(cpro);
scheduler_tableViewer.setLabelProvider(tlpro);
我前面已经设置了ContentProvider和LabelProvider了...
事件里面处理的是更新...所以我没有再设置...
谢谢你们的帮忙..希望能再提示下..
最好用 .setVisible(boolean);我代码里面没有写任何销毁的代码呀...运行的时候也是直接打开子界面..主界面还是在那里的..
scheduler_tableViewer.setLabelProvider(tlpro);
的时候scheduler_tableViewer早已经被销毁了,所以会出现swt的错误,你只要把scheduler_tableViewer改为static类型的话那么问题就全部解决了,就不会在销毁掉