Inhalt einer Sashform aendern

J

Joerg66

Hallo Leute,
ich bin am verzweifeln. Habe eine Sashform mit zwei Teilen, im Unteren moechte ich verschiedene Abfrage-Masken einblenden. Aber die Aktualisierung klappt nicht. Alte Maske wird zwar sofort gekillt, aber die neue erst nach einer Veraenderung der Fenstergroesse dargestellt.
Kann mir da jemand helfen ? Hier der Code:
Code:
public class Main {
    private static Display display;
    public static Shell shell;
    public static SashForm SFEingeben;
    public static SashForm SFGesamt;
    public static Masken masken;

    Main(){
        display = new Display ();
        shell = new Shell (display);
        shell.setLayout (new FillLayout ());
        Menu menuBar = new Menu (shell,SWT.BAR);
        shell.setMenuBar(menuBar);
        createDateiMenu(shell, menuBar);
        createBohrMenu(shell, menuBar);
        createSashForm(shell);
    }
    public static void main(String[] args) {
        Main elements = new Main();
        elements.mainLoop(500,500);
    }
 
    public void mainLoop(int hSize, int vSize){
        shell.setSize( hSize, vSize);
        shell.setText("Wotan         (c)2006 J.Clasen");
        shell.pack ();
        shell.open ();
        while (!shell.isDisposed ()) {
            if (!display.readAndDispatch ())
                display.sleep ();
        }
        display.dispose ();
    }
    
    private static void createSashForm(Shell shell){
        SFGesamt = new SashForm(shell, SWT.HORIZONTAL | SWT.NONE);
        SFEingeben = new SashForm(SFGesamt, SWT.VERTICAL | SWT.NONE);
        
        Maskenliste mliste = new Maskenliste(SFEingeben);
         masken = new Masken(SFEingeben);
//       Gewichten waagerecht
//        SFEingeben.setWeights( new int[]{100,120});
    }
    
    private static void createDateiMenu(Shell shell, Menu menuBar) {
        MenuItem dateiTitle = new MenuItem (menuBar, SWT.CASCADE);
        dateiTitle.setText("Datei");
        Menu dateiMenu = new Menu (shell, SWT.DROP_DOWN);
        dateiTitle.setMenu(dateiMenu);
        MenuItem programExit = new MenuItem(dateiMenu, SWT.NULL);
        programExit. setText("Beenden");
        programExit.addSelectionListener( new Exit(shell) );
    }
    
    private static void createBohrMenu(final Shell shell, Menu menuBar) {
        MenuItem bohrTitle = new MenuItem (menuBar, SWT.CASCADE);
        bohrTitle.setText("Bohren");
        Menu bohrMenu = new Menu (shell, SWT.DROP_DOWN);
        bohrTitle.setMenu(bohrMenu);
        
        MenuItem einzelbohrung = new MenuItem(bohrMenu, SWT.NULL);
        einzelbohrung. setText("Einzelbohrung");
        einzelbohrung.addSelectionListener(new SelectionAdapter(){
            public void widgetSelected(SelectionEvent e){
                SFEingeben.getChildren()[1].dispose();
                masken = new Masken(SFEingeben);
                SFGesamt.update();
             }
        });
 
Zurück