2016-06-16 2 views
0

Мы создали внутренний инструмент в Java -> Jar. Он создан в JavaFX.Тот же сгенерированный файл .JAR отличается на разных компьютерах

.jar отлично работает в 9 из 11 компьютеров, но в 2 из них .jar имеет разный размер. По некоторым причинам, у этих 2 человек окно поменьше. Я также приложу изображения, чтобы показать разницу.

Во-первых, .jar в работе ПК (вы можете четко видеть края .jar и все поля отчетливо видны:

http://imgur.com/ycm6gk6

Во-вторых, .jar, что сломана (I нарисовали области, где вы можете увидеть, что поле/окно режется, это только то, что все, что в кадре не подходят там по какой-то причине):

Я могу предоставить дополнительныеесли потребуется. Но в настоящее время кажется, что для этих двух компьютеров поля не подходят для фрейма, может ли это быть разницей в java-версиях или ОС?

Edit: Добавление некоторой информации о макетах и ​​т.д. (все элементы находятся в сетках):

@Override 
    public void start(final Stage stage) throws Exception { 
    final Group root = new Group(); 

    GridPane grid0 = new GridPane(); 
    final Scene scene = new Scene(root, 1030, 768); 
    final GridPane grid = new GridPane(); 
    grid.setHgap(5); //The gap properties manage the spacing between the rows and columns. 
    grid.setVgap(5); //Vahe iga rea ja veeru vahel pmst. 
    grid.setPadding(new Insets(40, 20, 20, 20)); //while the padding property manages the space around the edges of the grid pane. Ehk kogu raami sisu vahe ��rtest. 
    //In this example, there are 10 pixels of padding on each side. 
    //grid.setGridLinesVisible(true); //N�itab t�pselt joonduse �ra 

    GridPane grid2 = new GridPane(); 
    grid2.setHgap(5); //The gap properties manage the spacing between the rows and columns. 
    grid2.setVgap(5); //Vahe iga rea ja veeru vahel pmst. 
    grid2.setPadding(new Insets(40, 20, 20, 20)); //while the padding property manages the space around the edges of the grid pane. Ehk kogu raami sisu vahe ��rtest. 

    final GridPane grid3 = new GridPane(); 
    grid3.setHgap(5); //The gap properties manage the spacing between the rows and columns. 
    grid3.setVgap(5); //Vahe iga rea ja veeru vahel pmst. 
    grid3.setPadding(new Insets(40, 20, 20, 20)); //while the padding property manages the space around the edges of the grid pane. Ehk kogu raami sisu vahe ��rtest.**strong text** 
    grid0.add(grid, 0, 0); 
    Line joon2 = new Line(0, 0, 0, 800); 
    grid0.add(joon2, 1, 0); 
    grid0.add(grid2, 2, 0); 
    final Line joon3 = new Line(0, 0, 0, 800); 
    grid0.add(joon3, 3, 0); 
    grid0.add(grid3, 4, 0); 
    root.getChildren(). 

      add(grid0); 

    root.getChildren(). 

      add(menuBar); 

    stage.setResizable(false); //Cannot resize the Bit! 
    stage.setScene(scene); 
    stage.show(); 
+0

Есть ли разрешение экрана на всех 11 машинах? –

+0

Хороший комментарий, похоже, для тех, у кого проблема, есть разрешение 2560 x 1440 (также рекомендуется для них). Но для тех, у кого это работает, все меньше. Не могли бы вы предложить какое-либо исправление для этого? (Потому что, если они переключают его ниже, он не будет исправлять его). –

+0

Без каких-либо подробностей о используемых макетах мы не можем делать никаких рекомендаций, кроме как обернуть все это в 'ScrollPane' ... – fabian

ответ

1

Спасибо всем за ответы, мне удалось выяснить проблему!

Были 2 варианта, чтобы исправить это:

  1. Чтобы изменить окна масштабирования в разделе «Разрешение экрана».
  2. Я удалил размер жестко заданной сцены и дал размер вычислять по размеру элементов в сетках, поэтому он будет динамичным для каждого компьютера.
Смежные вопросы