私はjavafx ScrollBar
について学んでいます。私はScrollPane
について少し知っているが、私はすべてのコントロールを把握したい。ここではjavafx ScrollBar
を使用しようとしました。それは動作していません。JavaFXでScrollBarを使用するルールとは何ですか?
メインクラス:
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.Parent;
import javafx.stage.Stage;
import javafx.fxml.FXMLLoader;
import java.io.IOException;
public class ScrollBarExample extends Application{
@Override
public void start(Stage stage)throws IOException {
Parent root = FXMLLoader.load(getClass().getResource("scroll.fxml"));
Scene scene = new Scene(root);
stage.setScene(scene);
stage.show();
}
}
コントローラクラス:
import javafx.scene.control.Label;
import javafx.scene.control.ScrollBar;
import javafx.fxml.FXML;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
public class ScrollController{
@FXML private Label label;
@FXML private ScrollBar scroll;
public void initialize(){
scroll.valueProperty().addListener(new ChangeListener<Number>(){
@Override
public void changed(ObservableValue<? extends Number> value, Number oldValue, Number newValue){
label.setLayoutX(newValue.doubleValue());
}
});
}
}
FXMLコード:
<?import javafx.scene.layout.GridPane?>
<?import javafx.scene.control.ScrollBar?>
<?import javafx.scene.layout.Pane ?>
<?import javafx.scene.control.Label ?>
<GridPane prefWidth="300" prefHeight="250" xmlns:fx="http://javafx.com/fxml" fx:controller="ScrollController" >
<children>
<ScrollBar fx:id="scroll" min="0" max="100" GridPane.rowIndex="0" GridPane.columnIndex="0" />
<Label fx:id="label" text="Move Me" GridPane.rowIndex="1" GridPane.columnSpan="2" GridPane.columnIndex="0" />
</children>
</GridPane>
だから何ScrollBar
を使用するルールはありますか?それはどの要素で使うことができますか?
fabian layoutXとtranslateXの違いを説明できますか?私は検索しましたが、私には簡単な答えが見つかりませんでした。 –
@Nothing: 'layoutX'は、変換が適用される前にノードが置かれる場所です。 'translateX'のような「変換プロパティ」は、ノードが実際にどこで描画されたかを変更することができます。 'translateX'が唯一の"変換プロパティ "セットである場合、そのラベルがレイアウトのために持つ位置は' x = layoutX'から始まりますが、実際に描画される位置は 'x = layoutX + translateX'です。 ['Node.boundsInParent'](https://docs.oracle.com/javase/8/javafx/api/javafx/scene/Node.html#boundsInParentProperty) – fabian
こちらをご覧ください。私は理解するためにイメージを描きます。 http://imgur.com/a/vRlOjよろしいですか?あなたはそのようなイメージを描くことができますか? –