Attivare la funzione anti-aliasing in SWT
Domanda
ho chiamato gc.setAntialias(SWT.ON);
e non fa nulla. Secondo tale metodo, dovrebbe funzionare.
Gli stati Javadoc:
Imposta anti-aliasing del ricevitore valore al parametro, che deve essere uno dei SWT.DEFAULT, SWT.OFF o SWT.ON.
Non funziona per me, e io sono la pittura su un semplice tela di canapa.
Soluzione
Di seguito ha lavorato per me in un app ho costruito e le mie supposizioni a quando / come si deve farlo.
Così ho creato un nuovo GC, impostare l'Antialiasing come avete fatto e poi disegnato quello che mi serviva per con quell'oggetto gc. La chiave è collegarlo al guscio si disegnare in.
GC gc = new GC(shell);
gc.setAntialias(SWT.ON);
//then I attach to LightweightSystem for testing.
LightweightSystem lws = new LightweightSystem(shell);
Oltre a questo assicuratevi di farlo prima di disegnare qualsiasi cosa. Se si dispone di chiamarlo poi magari provare a chiamare un ridipingere o ridisegnare l'intero spazio.
Siamo spiacenti, senza ulteriori informazioni non sono sicuro esattamente ciò che è sbagliato.
Altri suggerimenti
Dopo la risposta di derBiggi, si ca anche forzare l'opzione avanzata per vero.
gc.setAdvanced(true)
Inoltre, se si sta disegnando etichette, assicurarsi di utilizzare gc.setTextAntialias( SWT.ON );
Si può anche verificare se gc.getAdvanced()
restituisce true, esso dovrebbe dopo setAntialias()
o setTextAntialias
è stato impostato.
Inoltre da che è piuttosto semplice.