JOptionPane无法正确显示?

时间:2014-07-21 19:51:43

标签: java swing joptionpane

今天我将我的jdk和docs从7更新到8.我对我的程序进行了一些更改,现在当我尝试让程序使用JOptionPane,JLabel,......时,一切都搞砸了。我创建了一个单独的测试器类,其唯一目的是运行单个JOptionPane框,但仍然出现错误。下面是对话框的外观图片。 Java 8是否存在严重问题?

import javax.swing.JOptionPane;



public class CirclePointTester
 {
    public static void main(String [] args)
    {
        String input = JOptionPane.showInputDialog("Enter the x coordinate of the circle");
            int xc = Integer.parseInt(input);
        String input2 = JOptionPane.showInputDialog("Enter the y coordinate of the circle");
            int yc = Integer.parseInt(input2);
        String input3 = JOptionPane.showInputDialog("Enter the height value of the circle");
            int height = Integer.parseInt(input3);
        String input4 = JOptionPane.showInputDialog("Enter the width value of the circle");
            int width = Integer.parseInt(input4);
    }
 }

Program 1

Program 2

1 个答案:

答案 0 :(得分:5)

作为参考,这里有一个完整的例子,显示Mac OS X 10.9,Java 8没有回归。它可以帮助你确定明显的回归。

附录:在有用的评论中,@ mKorbel在Windows上使用某些NVIDIA卡引用了number of similar problems Java 8。

image

控制台:

42

代码:

import java.awt.EventQueue;
import javax.swing.JOptionPane;

/**
 * @see https://stackoverflow.com/a/24875960/230513
 */
public class Test {

    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {

            @Override
            public void run() {
                String input = JOptionPane.showInputDialog(
                    "Enter the x coordinate of the circle");
                int xc = Integer.parseInt(input);
                System.out.println(xc);
            }
        });
    }
}