2015-10-22 4 views
0

Я пытаюсь установить отступы для моего GridPane, но каждый раз, когда я отступы это дает мне сообщение об ошибке:Java FX gridpane setpadding

incompatible types: java.awt.Insets cannot be converted to javafx.geometry.insets 

Каждый веб-сайт я иду и все поисковые запросы государств по осуществлению это нравится:

grid.setPadding(new Insets(10, 10, 10, 10)); 

И в моем коде он у меня установлен точно такой же, только для целей тестирования:

grid.setPadding(new Insets(10, 10, 10, 10)); 

Так что я не понимаю, почему это не позволит мне написать это, я также пытался исследовать сообщение об ошибке, но ничего не возникает.

Вот мой код:

/* 
* To change this license header, choose License Headers in Project Properties. 
* To change this template file, choose Tools | Templates 
* and open the template in the editor. 
*/ 
package myrectangle2d; 

import java.awt.Insets; 
import javafx.application.Application; 
import javafx.event.ActionEvent; 

import javafx.event.EventHandler; 
import javafx.scene.Scene; 
import javafx.scene.control.Button; 
import javafx.scene.control.Label; 
import javafx.scene.control.TextField; 
import javafx.scene.layout.BorderPane; 
import javafx.scene.layout.GridPane; 
import javafx.scene.layout.HBox; 
import javafx.scene.layout.StackPane; 
import javafx.stage.Stage; 

/** 
* 
* @author macuser 
*/ 
public class Exercise18_29 extends Application { 

    Stage window; 
    Label label1, label2, centerXL, centerXR; 
    TextField textCenterXL, textCenterXR; 

    public static void main(String[] args) { 
     launch(args); 
    } 


    @Override 
    public void start(Stage primaryStage) { 

     window = primaryStage; 
     window.setTitle("Triangles"); 



     GridPane grid = new GridPane(); 
     grid.setPadding(new Insets(10, 10, 10, 10)); 

     label1 = new Label("Do the Triangles match"); 
     GridPane.setConstraints(label1, 0, 0); 


     label2 = new Label("Yes or no"); 
     GridPane.setConstraints(label2, 1, 0); 


     centerXL = new Label("Center X LEFT"); 
     GridPane.setConstraints(centerXL, 0, 5); 

     textCenterXL = new TextField(); 
     GridPane.setConstraints(textCenterXL, 1, 5); 


     centerXR = new Label("Center X RIGHT"); 
     GridPane.setConstraints(centerXL, 0, 5); 

     textCenterXR = new TextField(); 
     GridPane.setConstraints(textCenterXR, 3, 5); 

     grid.getChildren().addAll(label1, label2, centerXL, textCenterXL, centerXR, textCenterXR); 

     Scene scene = new Scene(grid, 400, 600); 


     window.setScene(scene); 



     window.show(); 

    } 




} 

ответ

5

Сообщение об ошибке говорит вам все, что нужно знать:

несовместимых типов: java.awt.Insets не может быть преобразован в javafx.geometry.insets

Вы импортировали java.awt.Insets: (первая строка импорта в вашем коде) javafx.geometry.Insets.

+0

@ James_D - Спасибо, что сделал трюк. Я все еще новичок в изучении Java, поэтому я не совсем понял эту ошибку. – rissandimo

+0

Я получаю ту же ошибку, но для меня, если я изменю ее на javafx.geometry.Insets, она дает ошибку и просит меня изменить ее на java.awt.Insets, если я использую java.awt.Insets. Вставки внутри setPadding doesn Я работаю, я меняю его на геометрию. Вставляет код не работает ... какие-то мысли? – SebastianZdroana

+0

Звучит как другой вопрос. Вы используете AWT/Swing, а также JavaFX? То есть вам почему-то нужны оба класса «Вставки»? –

Смежные вопросы