Form SWT

Boa tarde galera.
To com uma dúvida, para instanciar um formulário no SWT
devo declarar dois Obejtos um Display e um Shell, passando o Objeto display no constructor do shell,
se eu não quiser passar o display no constructor qual método set eu posso indicar o display depois,
e para fazer o formulário aparecer é preciso fazer um
laço while
shell.open();
while (!shell.isDisposed()){
if (!display.readAndDispatch()){
display.sleep();
}
}

tem como não usar esse while, já procurei na net e todo exemplo que eu vejo usa isso.
Sei lá algo do tipo que na hora que eu instancio o form já apareça.

estou estudando (sem compromisso o swt) e verifiquei como a instancia do form funciona.

quando você coloca as seguintes linhas

Display display = new Display();
Shell shell = new Shell(display);
shell.open();

já é o suficiente para você ter a janela, mas assin que ela abre, já fecha automaticamente.

Assim é preciso que você insira um loop que primeiro verifica se o usuário não fechou a janela. A outra verificação indica que ele deve verificar a fila de eventos para qualquer mensagem que o sistema de janelas ou outras partes de sua aplicação tenha sido gerado para você.

Dai o loop que você citou. Este loop é necessário. Uma alternativa é utilizar a biblioteca JFace.

Em JFace o código fica muito menor

import org.eclipse.jface.window.*;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.*;

public class JanelaSWTeJFace extends ApplicationWindow{

public JanelaSWTeJFace(){
     super(null);
}

protected Control createContents(Composite parent){
     parent.pack();
     return parent;
}

public static void main(String[] args){
     JanelaSWTeJFace janela = new JanelaSWTeJFace();

//agora sem o loop do swt
     janela.setBlockOnOpen(true);     //se verdadeiro chama o proximo metodo open()
     janela.open();
     Display.getCurrent().dispose();
}

}

Tem um livro nacional que trata do básico(básico mesmo do uso do SWT e JFace). Segundo li as duas bilbiotecas devem ser utilizada em conjunto principalmente em aplicações java para desktops. O livro é “Dominando eclipse - Tudo que o Desenvolvedor java precisa para criar aplicativos para desktops” de Edson Gonçalves - editora moderna.

Eu achei no emule
Uma dica: use as tags code para incluir código no post blz
Espero que ajude

valeu pela dica vou ter que estudar JFace
esse livro é muito grande será que consegue me passar por e-mail
se puder manda ai
erick.p.rocha@gmail.com
Obrigado.