HAllo, ich habe mir ein Wizard erstellt, und möchte gern ein next Buttzon haben, damit ich zur nächsten Seite springen kann. Ich arbeite mit eclipse 4 und e4 tools und versuche dort ein wizard zu erstellen, jedoch komme ich nur auf dem wizardDialog, wo drin steht "Gerätekonfiguration", es gibt kein next button, bzw komme ich gar nciht auf meine erste Seite.kann mir bitte jemand helfen.danke im Voraus.
Seite 1
Seite 2
Der Wizard wo die Seiten hinzugefügt werden:
und der wizard Dialog, der das ganze öffnet?
Seite 1
Java:
package wizards;
import org.eclipse.jface.wizard.WizardPage;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Label;
public class FirstWizard extends WizardPage {
private Composite container;
public FirstWizard(String pageName) {
super(pageName);
setTitle(pageName);
canFlipToNextPage();
}
@Override
public void createControl(Composite parent) {
container = new Composite(parent, SWT.NONE);
GridLayout gridLayout = new GridLayout();
container.setLayout(gridLayout);
gridLayout.numColumns = 2;
Label label = new Label(container, SWT.NONE);
label.setText("Put a value here.");
label.setVisible(true);
setControl(container);
setPageComplete(false);
}
}
Seite 2
Java:
package wizards;
import org.eclipse.jface.wizard.WizardPage;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Label;
public class SecondWizard extends WizardPage {
private Composite container;
protected SecondWizard(String pageName) {
super(pageName);
setTitle(pageName);
}
@Override
public void createControl(Composite parent) {
container = new Composite(parent, SWT.NONE);
GridLayout layout = new GridLayout();
container.setLayout(layout);
layout.numColumns = 2;
Label label1 = new Label(container, SWT.NONE);
label1.setText("Say hello to Fred");
setControl(container);
setPageComplete(false);
}
}
Der Wizard wo die Seiten hinzugefügt werden:
Java:
package wizards;
import org.eclipse.jface.wizard.IWizardPage;
import org.eclipse.jface.wizard.Wizard;
public class MyWizards extends Wizard {
private FirstWizard one;
private SecondWizard two;
public MyWizards() {
super();
}
@Override
public String getWindowTitle() {
return "guten Tag";
}
@Override
public void addPage(IWizardPage page) {
page.canFlipToNextPage();
one = new FirstWizard("FIRST");
addPage(one);
one.setVisible(true);
one.setPreviousPage(page);
one.canFlipToNextPage();
two = new SecondWizard("SECOND");
addPage(two);
two.setPreviousPage(one);
two.setVisible(true);
}
@Override
public IWizardPage getNextPage(IWizardPage currentPage) {
if (currentPage == one)
return two;
if (currentPage == two)
return one;
return null;
}
@Override
public boolean performFinish() {
return true;
}
@Override
public int getPageCount() {
return 2;
}
}
und der wizard Dialog, der das ganze öffnet?
Java:
package DevCon.handlers;
import org.eclipse.e4.core.di.annotations.Execute;
import org.eclipse.jface.window.Window;
import org.eclipse.jface.wizard.WizardDialog;
import org.eclipse.swt.widgets.Shell;
import wizards.MyWizards;
public class ConfigurationHandler {
@Execute
public void execute(Shell shell) {
WizardDialog wizardDialog = new WizardDialog(shell, new MyWizards());
wizardDialog.setHelpAvailable(true);
wizardDialog.create();
wizardDialog.setTitle("Gerätekonfiguration");
if (wizardDialog.open() == Window.OK) {
System.out.println("Ok pressed");
} else {
System.out.println("Cancel pressed");
}
}
}