先日java8をインストールしたのですが、JMenu/JButton/JLabelなどの文字やボーダーが一部欠けたように表示されるようになりました(画像を添付しました)。 java7では再現しないことから色々探してみると下記サイトで同件と思われるレポートを見つけました。 http://stackoverflow.com/questions/22737535/swing-rendering-appears-broken-in-jdk-1-8-correct-in-jdk-1-7 しかし「NVIDIAのカードの設定を変えたら動くようになった」というコメント以外に対応策らしきものがなく、それを自分も試してみたものの解決せずでした。 もしjava8の問題ならしばらくはjava7を使い続けるしかないとは思うのですが、同件と思われる問題が上記サイト以外に見つけられなかったことからjava8問題だというのは早計かとも思い、諦めてしまう前に「同じ現象になったよ」「こうしたら動いた」「コードに問題がある」などの情報がないかと思い質問を上げさせていただきました。コメントいただけたらありがたいです。 再現コード: package jp.po.test1; import java.awt.Font; import javax.swing.*; public class Test1 extends JFrame { public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { @Override public void run() { new Test1().setVisible(true); } }); } Test1() { super("title"); JLabel label = new JLabel("BOO FOO WOO"); label.setFont(new Font(Font.DIALOG, Font.PLAIN, 30)); getContentPane().add(label); setDefaultCloseOperation(EXIT_ON_CLOSE); pack(); } }
↧