-1
정수를 변경하면 포함 된 텍스트의 위치가 변경됩니다. 당신이 숫자가 75 때 쓸모가있다, 사진에서 볼 수 있듯이텍스트를 고정 위치로 설정하면 어떻게 확대시킬 수 있습니까?
Stage priceStage = new Stage();
priceStage.setResizable(false);
priceStage.setWidth(450);
priceStage.setHeight(450);
priceStage.setTitle(windowTitle);
IntegerProperty price, maxIncome, adLevel;
price = new SimpleIntegerProperty(priceDifference);
maxIncome = new SimpleIntegerProperty();
adLevel = new SimpleIntegerProperty(1);
Button goButton = new Button("Организовать!");
Text assignPriceText = new Text(" Цена на одного студента: ");
assignPriceText.setFont(Font.font("Arial", FontWeight.BOLD, 30));
Text plus = new Text("+");
Text minus = new Text("-");
Text priceInfo = new Text();
Text priceText = new Text();
Text studentsAmmountText = new Text();
Text maxIncomeText = new Text();
Text adLevelText = new Text();
priceText.textProperty().bind(price.asString("%d $"));
studentsAmmountText.textProperty().bind(studentsAmmount.asString("\nКоличество студентов: %d"));
maxIncomeText.textProperty().bind(maxIncome.asString("\nДоход: %d $"));
adLevelText.textProperty().bind(adLevel.asString("\nРеклама: %d %% \n"));
TextFlow priceTextFlow = new TextFlow(minus, priceText, plus, studentsAmmountText, maxIncomeText, adLevelText);
priceTextFlow.setPadding(new Insets(0,0,0,50));
plus.setFill(Color.RED);
minus.setFill(Color.RED);
plus.setFont(Font.font(80));
minus.setFont(Font.font(80));
priceText.setFont(Font.font(100));
studentsAmmountText.setFont(Font.font(30));
maxIncomeText.setFont(Font.font(30));
adLevelText.setFont(Font.font(30));
goButton.setFont(Font.font(30));
: 나는 그것이 여기에 5로 동일하더라도 INT는 100 같을 때 같은 위치에있을 것을 원하는 내 코드입니다 빨간 선으로 표시된 공간. 그러나 숫자가 100 일 때는 완벽하게 중앙에 위치합니다. 그렇다면 숫자가 바뀌면 텍스트가 자동으로 위치를 변경하도록하려면 어떻게해야합니까?
StackPane을 사용하십시오. StackPane에 레이블을 추가하십시오. 이 경우 TextFlow를 StackPane에 추가해야하는 것처럼 보입니다. StackPane 너비를 부모의 너비 (부모 너비에 바인딩 된 너비)와 같게 만들 수 있다고 생각합니다. 그런 다음 TextFlow 너비가 StackPane의 최소 너비보다 작게 설정하십시오. – Sedrick