IntelliJ IDEA(13.1.1#IC-135.480)およびJDK 1.8.0(x64)をインストールし、GUIフォームデザイナでGUIを生成しました。
それから私はコードを実行し、何かが大丈夫ではないことに気付きました。
これが私のGUIのスクリーンショットです。
フォントのレンダリングはうまくいかないようです。さらに、ボタンの上にマウスを移動すると、ボタンがテキストを失います。
そこで、JDK 1.7.0_40(x64)をインストールし、プロジェクトを再コンパイルして、再度実行しました。
JDK 1.7を使用すると、次のフォームが表示されます。
レンダリングは問題ないようで、ボタンも問題ありません。
そのため、最新のグラフィックスおよびチップセットドライバーなどをインストールしましたが、問題は依然として存在します。 Java Swing UIでこのような問題が発生したことはありますか?私の問題を解決するのを手伝ってもらえますか?助けていただければ幸いです。
私は1つのJTextAreaと1つのJButtonだけで小さなプロジェクトを作成しましたが、同じレンダリングの問題があります。
アンドリュートンプソンによると、私はsetSize()を変更し、EDTから始めました。以下の例:
package at.maeh.Java.client.simpleTextClient;
import javax.swing.*;
import Java.awt.*;
public class SimpleClient extends JFrame {
private JPanel panel1;
private JTextArea textArea1 = new JTextArea();
private JButton button1 = new JButton();
public SimpleClient() {
super("SimpleClient");
// Panel
panel1 = new JPanel();
panel1.setLayout(new FlowLayout());
// BUtton
button1.setText("TestButton");
// TextArea
textArea1.setColumns(40);
textArea1.setRows(15);
// Add Components
panel1.add(textArea1);
panel1.add(button1);
// Add to Frame
this.getContentPane().add(panel1);
// pack and set Visible
pack();
setVisible(true);
System.out.println("Constructor EDT: " + SwingUtilities.isEventDispatchThread());
}
public static void main(String[] args) {
SwingUtilities.invokeLater(SimpleClient::new);
System.out.println("Main EDT: " + SwingUtilities.isEventDispatchThread());
}
}
結果は、コンポーネントを含む単純なJFrameです。
Textを書くか、mousePointerをButtonの上に移動すると、コンポーネントは次のようにレンダリングされます(Text:testsentence.123; Button-Label:TestButton)
最後に、私の問題の解決策を見つけました。 NVIDIA GeForce 620Mのエネルギー制御設定を最大パフォーマンスに変更する必要がありました。
問題が解決されていない人。この解決策を試してください:
OS内でグローバル環境変数「J2D_D3D」を「false」に設定します。 Sunによると、この設定はJava 2DシステムによるJava 1.4.1_02以降でのDirect3Dの使用をオフにするために使用されます。
つまり、単に引用符なしで「J2D_D3D」という名前と「false」という値を持つ環境変数を作成します。
これでレンダリングの問題が解決しました。あなたの問題も解決することを願っています。
次の手順を実行できます。
私はまったく同じ問題を抱えています。 duffysの品質設定調整後に見つけたもの:
私のノートブックはIntel HD 4000とNVS 5200Mの両方を実行します。 Java 7でSwingアプリケーションを実行すると、両方のカードで問題ありません。Java 8ダッフィーのスクリーンショット)、NVS 5200Mを使用して、以前と同じように見えます。
Javaバグトラッカーで何も見つかりませんでした。一方で、このバグを説明するのは困難です。
Duffy356の同様の修正:
NVIDIA NVS 5200MとHD 4000を搭載したWindows 7 64ビットを実行しているLenovo T430s。Java 8アップデート5へのアップデートにより、jEditとFreemindの2つのSwingアプリのグラフィックとボタンが破損しました。
NVIDIAコントロールパネルアプレットを使用して、電源管理モードのグローバル設定を「最大パフォーマンスを優先する」に変更すると、この問題が修正されたように見えます。
アプリがサイズを設定する方法に潜んでいる問題があるかどうかはわかりません。
手順:
私のために働いた....