Boa tarde, estou precisando mudar a cor da borda de um TextView em JavaFx quando houver validação do campo, procurei e não achei uma forma de fazer isso, preciso somente saber em como mudar a cor da borda.
Grato pela ajuda;
Vc esta’ referindo ao TextArea, ou TextField se for e’ simples, faça por css, se tiver problemas de performance podera’ colocar ele em um arquivo e tranforma-lo em binario.
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.TextField;
import javafx.scene.layout.GridPane;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
public class BorderColor extends Application {
public static void main(String[] args) { Application.launch(args); } @Override public void start(Stage primaryStage) { TextField field1 = new TextField(); TextField field2 = new TextField(); TextField field3 = new TextField(); primaryStage.setTitle("Borders"); Group root = new Group(); Scene scene = new Scene(root, 600, 330, Color.WHITE); field1.setText("Texto de Exemplo"); // final String cssDefault = "-fx-border-color: blue;\n" // + "-fx-border-insets: 5;\n" // + "-fx-border-width: 3;\n" // + "-fx-border-style: dashed;\n"; final String cssDefault = "-fx-border-color: red;-fx-border-width: 4;"; field1.setStyle(cssDefault); final VBox pictureRegion = new VBox(10); pictureRegion.setPadding(new Insets(10,10,10,10)); pictureRegion.getChildren().addAll(field1,field2, field3); root.getChildren().add(pictureRegion); primaryStage.setScene(scene); primaryStage.show(); }
}