Verwenden von HostServices.Versuch, einen Link zum Öffnen zu implementieren, wenn auf ein Menüeintrag geklickt wird, aber ein Fehler angezeigt wird
Ich bin mit dem Konstruktor
HostServices services = this.getHostServices();
ich es mit dem folgenden Menüpunkt arbeiten möchten, so dass, wenn dieser Menüpunkt wird geklickt sollte einen Link zu dem Web-Browser öffnen ... das Stück Code ich möchte das Objekt Dienste arbeiten ist
MenuItem fbMenuItem = new MenuItem("Facebook Page");
fbMenuItem.setId("fbMenuItem");
fbMenuItem.setOnAction(event -> {
services.showDocument("facebook.com");
});
ich die
importiert habendie mit HostServices arbeiten soll aber ich erhalte eine Fehlermeldung erhalten, die
Caesar.java:359: error: cannot find symbol
HostServices services = this.getHostServices();
^
symbol: method getHostServices()
1 error
sagt Aber wenn ich gleiche Prozedur mit einem normalen Button versuchen, die nicht in einem menuBar ist es funktioniert gut, aber wenn ich Verwenden Sie diesen Trick oben auf dem MenüBar gibt mir immer noch das Fehler
[getHostServices() ist eine Methode der Anwendung] (http://docs.oracle.com/javase/8/javafx/api/javafx/application/Application.html#getHos tDienstleistungen--). Sie können this.getHostServices() nur in einer Klasse aufrufen, die Application erweitert. – VGR
OK, dann wie kann ich eine Art von Link-Schaltfläche, die beim Klicken öffnet einen Webbrowser, aber diese Schaltfläche wird in einer Menüleiste als Menü-Element – Fule
Sie könnten ein HostServices-Objekt an den Konstruktor Ihrer übergeben 'Caesar' Klasse. – VGR