Chciałbym aby po najechaniu myszką nad daną pozycję np.: Ostrożnie z dziewczynami\n22:25\n
wyświetlić okno w którym pojawi się "zdjęcie" filmu razem z jego opisem. Mam już wszystko gotowe pod kątem API (ustawiłem filmweb API - nieoficjalne ale w pełni działające) oraz okna wyświetlającego opis danego filmu, mam jednak problem z integracją. Dla każdego elementu ListView
przypisałem przy pomocy metody .setOnMouseEntered
wywołanie mojej metody która pobierałaby z API potrzebne mi informacje i prezentowała w GUI w odpowiedniej formie, jednak mam problem, bo nie wiem który konkretnie element w listview
został wywołany. Doszedłem do miejsca takiego .setOnMouseEntered(e -> getMovieDescription(e.getPickResult().getIntersectedNode().toString()));
co daje mi coś takiego: ListViewSkin$2@27c30208[styleClass=cell indexed-cell list-cell]'Ostrożnie z dziewczynami\n22:25\n'
, jednak chciałbym uzyskać efekt w którym do metody getMovieDescription
przekazuje samą nazwę filmu. Czy istnieje sposób uzyskania pożądanego efektu w postaci przekazania do metody getMovieDescription
tylko tego : Ostrożnie z dziewczynami\n22:25\n
? mogę robić to ręcznie bo z tego ci widzę to każdy taki ciąg ma interesującą mnie nazwę filmu między apostrofami, jednak może istnieje inna możliwość ?
- Rejestracja:około 9 lat
- Ostatnio:około 9 lat
- Postów:5
0
- Rejestracja:ponad 9 lat
- Ostatnio:prawie 8 lat
- Postów:27
1
String[] a = e.getPickResult().getIntersectedNode().toString().split("'"); (<-- tu dajes ' jeden gorny przecinek )
i pobierasz z tego a[1] powinien mieć "Ostrożnie z dziewczynami\n22:25\n" cos takiego lecz te rozwiązanie jest mało elegackie.
PS jak dajesz coś takiego to dodaj chociaż skrawek kodu bo średnio wiem jak to wygłada w kodzie u ciebie.
taloni
getSelectionModel().getSelectedIndex()
getSelectionModel().getSelectedItem()
ewentualnie może ci chodzić o to
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.