Create a ListView with triangular tip in JavaFX application

0

I'm developing a JavaFX application, and I want to make a menu from a ListView, which will be triggered from a button pressed, but I'd like to put a triangular tip on the top of this menu according to the image I sent, I could not via CSS. How can I make a ListView similar to the one in the image ??

    
asked by anonymous 09.09.2016 / 03:11

1 answer

0

There are some classes that can help with this, they are Line, Polygon and Canvas .   It's a bit tricky but here's an example using the Line class.

/*O construtor da classe Line recebe 4 parâmetros opcionais, 
eles correspondem as coordenadas 'x' e 'y', os dois primeiros onde começa a linha,  
os dois ultimos onde termina a linha.  
Você terá que criar duas linhas, onde uma terminar a outra vai começar.
Supondo que sua ListView tenha uma largura de 400px, para o triângulo ficar
ficar mais ou menos no centro você pode fazer assim:*/

Line line1 = new Line(175, 50, 200, 0);//startX = 175, startY = 50, endX = 200, endY = 0
Line line2 = new Line(200, 0, 225, 50);//startX = 200, startY = 0, endX = 225, endY = 50
// coloque dentro de um HBox
HBox hbox = new HBox();
hbox.getChildren().addAll(line1, line2);
//centralize as linhas no hbox
hbox.setAlignment(Pos.CENTER);
//depois coloque o hbox e a listview dentro de um VBox
VBox vbox = new VBox();
vbox.getChildren().addAll(hbox, listview);

It may not be the best way, but it's an option.

Coordinate system: link

    
09.09.2016 / 18:01