Как я могу заставить одну конкретную JTextArea не использовать сглаживание, оставляя ее включенной для остальной части моего приложения? - PullRequest
5 голосов
/ 26 января 2011

Я использую Java 6 на Mac OS X 10.6.Как и мои пользователи.Я пытаюсь заставить одну конкретную JTextArea не использовать сглаживание.

Любые идеи?

Вот мой тестовый код как:

Ответы [ 2 ]

1 голос
/ 26 января 2011

В Java> 5 вам не нужно переопределять paint методы. Вы можете установить свойство клиента следующим образом:

jTextArea2.putClientProperty(sun.swing.SwingUtilities2.AA_TEXT_PROPERTY_KEY, null);

Обратите внимание, что SwingUtilities2 - это класс Sun, поэтому он может не работать в других jvms.

1 голос
/ 26 января 2011

Я не тестировал , но вы можете попробовать переопределить метод paintComponent вашего текстового поля:

public void drawComponent(Graphics g)
{
   Graphics2D g2d = (Graphics2D) g;
   g2d.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_OFF);
   super.drawComponent(g2d);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...