Pregunta

He llamado gc.setAntialias(SWT.ON); y no hace nada. De acuerdo con ese método, que debería funcionar.

Los estados Javadoc:

  

Establece el suavizado del receptor   valor al parámetro, que debe ser   uno de SWT.DEFAULT, SWT.OFF o SWT.ON.

No está funcionando para mí, y estoy pintando en un simple lienzo.

¿Fue útil?

Solución

Los siguientes trabajaron para mí en una aplicación que construí y mis conjeturas sobre cuándo / cómo se tiene que hacer esto.

Así que creé un nuevo GC, establecer el antialias como lo hizo y luego dibujé lo que tenía que con ese objeto GC. La clave es unir a la cáscara que se basará en.

GC gc = new GC(shell);
gc.setAntialias(SWT.ON); 
//then I attach to LightweightSystem for testing.
LightweightSystem lws = new LightweightSystem(shell);

Aparte de eso, asegúrese de hacer esto antes de dibujar cualquier cosa. Si usted tiene que llamar a él después quizá intente llamar a un repintado o volver a dibujar de todo el espacio.

En este momento, sin más información que no estoy seguro exactamente lo que está mal.

Otros consejos

Tras la respuesta de derBiggi, también ca fuerza la opción avanzada en true.

gc.setAdvanced(true)

Además, si usted está dibujando etiquetas, asegúrese de usar gc.setTextAntialias( SWT.ON );

También puede comprobar si gc.getAdvanced() devuelve verdadero, debe ajustarse después se setAntialias() o setTextAntialias.

Además de eso, es bastante sencillo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top