我在其中创建了一个带有jpanel的对话框,如果我删除了对话框,仍会引用jpanel.当我点击取消按钮时,我想破坏该对话框及其中的所有内容.如何删除对话框和jpanel?
我正在寻找一些用于在Java中创建gui的框架或工具包(样式拖放).我需要使用停靠,工具栏,表等进行相当复杂的应用程序.
哪一个最好?
我只有一个有很多实例的类.每个实例都是其他几个实例的观察者.同样,每个实例都可以被另外几个实例观察到.
如何避免在观察者中调用update()的无限循环?
我在这里发布的类中调用了addNotify()方法.问题是,当我在代码中调用addNotify()时,setKeys(objs)什么都不做.我的浏览器运行应用程序时没有任何内容.
但是当我调用addNotify()而没有循环(对于int ....),并且只向ArrayList添加一个项目时,它会正确地显示一个项目.
有谁知道哪里有问题?见cede
class ProjectsNode extends Children.Keys{
private ArrayList objs = new ArrayList();
public ProjectsNode() {
}
@Override
protected Node[] createNodes(Object o) {
MainProject obj = (MainProject) o;
AbstractNode result = new AbstractNode (new DiagramsNode(), Lookups.singleton(obj));
result.setDisplayName (obj.getName());
return new Node[] { result };
}
@Override
protected void addNotify() {
//this loop causes nothing appears in my explorer.
//but when I replace this loop by single line "objs.add(new MainProject("project1000"));", it shows that one item in explorer
for (int i=0;i==10;i++){ …
Run Code Online (Sandbox Code Playgroud) 我不能把jChceckBox放到jTable单元格中.我更可能将checkBox放到表中,但是当我使用该表运行模块时,应该是checkBox的单元格显示文本"true"或"false".该单元格的行为与复选框相同,但它显示文本值而不是复选框.
这是代码.
DefaultTableModel dm = new DefaultTableModel();
dm.setDataVector(new Object[][]{{"dd", "Edit", "Delete"},
{"dd","Edit", "Delete"}},
new Object[]{"Include","Component", "Ekvi"});
jTable1 = new javax.swing.JTable();
jTable1.setModel(dm);
JCheckBox chBox=new JCheckBox();
jTable1.getColumn("Include").setCellEditor(new DefaultCellEditor(chBox));
jScrollPane1.setViewportView(jTable1);
Run Code Online (Sandbox Code Playgroud) 在哪里可以找到研究观察者模式的好材料?我需要一些代码示例和模型化情况的图片