swt

mario
17 de Agosto del 2004
hola a todos,
tengo un problema con SWT. Lo que sucede es que intento hacer algo basico como mostrar un label y un boton en una ventana, pero no me muestra ni el label ni el boton, pero sí la ventana. alguien sabe porque?
aclaro que no cuamdo compilo no me da ningun warning o error.
adjunto el codigo que llamo desde el main:

import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.*;

public class VentanaPrincipal
{
private Display display;
private Shell shell;
private Label label1;
private Button b1;

public VentanaPrincipal()
{
display = new Display();
shell = new Shell(display);
shell.setText("hola");

shell.pack();

label1 = new Label(shell,SWT.CENTER);
label1.setText("label1");
b1 = new Button(this.shell,SWT.PUSH | SWT.CENTER);
b1.setText("boton1");

shell.setVisible(true);
shell.open();

while (!shell.isDisposed())
{
if(!display.readAndDispatch())
display.sleep();
}
display.dispose();
}
}

Salvador
17 de Agosto del 2004
has intentado poner
label1.setSize(100,20);
label1.setVisible(true);

b1,setSize(20,20):
b1.setVisible(true):

hay que poner tambien el tamaño cuando no usas pack

Saludos!!


Espirou
17 de Agosto del 2004
Buenas

creo que se te ha olvidado asignarle un layout a la shell, prueba añadiendo: shell.setLayout(new RowLayout());