2017-12-23 7 views
0

Ich fragte mich, ob jemand wusste, wie man ein Bild in einer Symbolleiste etwas nach rechts innerhalb der Symbolleiste bewegt, so dass es nicht so nah an der Kante des Bereichs ist.Wie man Bild in ToolBar in JavaFx verschiebt

Dies ist derzeit, was ich habe: https://i.stack.imgur.com/vZnzX.png

Ich will es nur ein paar Pixel nach rechts, so dass ihre zentralere in der Werkzeugleiste verschoben werden.

Im derzeit ein Imageview verwendet, die zu einem Label zugeordnet ist in einer Symbolleiste, um das Bild anzuzeigen

Vielen Dank für jede Hilfe

dies ist der Code, den ich habe:

Image robotIcon = new Image(getClass().getResourceAsStream("robot-16.png")); 
ImageView robotView = new ImageView(robotIcon); 
robotView.setFitHeight(50); 
robotView.setFitWidth(50); 

Label robotImage = new Label(""); 
    robotImage.setGraphic(robotView); 



ToolBar toolBar2 = new ToolBar(); 
    toolBar2.setOrientation(Orientation.VERTICAL); 
    toolBar2.getItems().addAll(
      controlLabel, 
      new Separator(), 
      gameLabel, 
      rdoStart, 
      rdoStop, 
      new Separator(), 
      animationLabel, 
      rdoRestart, 
      new Separator(), 
      simulationLabel, 
      btnRobot, 
      delRobot, 
      new Separator(), 
      robotLabel, 
      difSizeRobot, 
      sameSizeRobot, 
      new Separator(), 
      robotSpeedLabel, 
      difSpeedRobot, 
      sameSpeedRobot, 
      new Separator(), 
      objectSpawnLabel, 
      solidObject, 
      solidCircle, 
      robotImage 
     ); 
+0

Wenn Sie es nur durch eine Fi verschieben möchten x Pixelanzahl, können Sie einfach 'robotImage.setPadding (neue Einfügungen (0, 0, 0, 5))' (zum Beispiel). Wenn Sie es tatsächlich zentrieren möchten, versuchen Sie, die maximale Breite der Beschriftung auf "Double.MAX_VALUE" zu setzen und die "Ausrichtung" auf "CENTER" zu setzen (obwohl ich mir nicht ganz sicher bin, wie eine Symbolleiste ihr Layout verwaltet). –

+0

@James_D ohhh dachte nicht über die setPadding Sache nach, aber das hat das Problem gelöst! Ich kann es jetzt in der Symbolleiste verschieben, danke! –

Antwort

1

Die Die einfachste Lösung besteht nur darin, dem Etikett eine Auffüllung hinzuzufügen:

robotImage.setPadding(new Insets(0, 0, 0, 5)); 
Verwandte Themen