问题
I drawWitness(model)
instruction in my code which its return type is void but it draws a shape. How can I insert it in the grpModelProperties1
? When I use it in the below form I have NullPointerException
error.
ScrolledComposite scrolledComposite = new ScrolledComposite(composite, SWT.H_SCROLL | SWT.V_SCROLL);
scrolledComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
scrolledComposite.setExpandHorizontal(true);
scrolledComposite.setExpandVertical(true);
Composite innerComposite = new Composite(scrolledComposite, SWT.NONE);
innerComposite.setLayout(new GridLayout());
Group grpModelProperties1 = new Group(innerComposite, SWT.SHADOW_IN);
grpModelProperties1.setLayout(new GridLayout());
grpModelProperties1.setText("Test Model");
GridData data1 = new GridData(SWT.FILL, SWT.TOP, true, false);
data1.heightHint = 400;
data1.widthHint = 400;
grpModelProperties1.setLayoutData(data1);
scrolledComposite.setContent(innerComposite);
scrolledComposite.setMinSize(innerComposite.computeSize(SWT.DEFAULT, SWT.DEFAULT));
drawWitness(model);
drawWitness:
private void drawWitness(IWitnessModel witness) {
IWitnessVisualizer visualizer = WitnessUtil.getWitnessVisualizer(witness);
for (Control ctrl : grpModelProperties1.getChildren()) {
ctrl.dispose();
}
visualizer.render(grpModelProperties1);
grpModelProperties1.pack();
}
来源:https://stackoverflow.com/questions/48041908/swt-using-void-function-in-the-group