JavaFX中是否有功能允许您单击超链接并在浏览器(例如Chrome或Firefox)中打开它?

到目前为止,这是我所拥有的,但是我正在为手柄而苦苦挣扎。

    @FXML
    public void link() {
        hypTerms.setOnaction(new EventHandler<actionEvent>() {
            @Override
            public void handle(actionEvent e) {
                ;
            }
        });
    }
ether1984 回答:JavaFX中是否有功能允许您单击超链接并在浏览器(例如Chrome或Firefox)中打开它?

这应该有效:

Hyperlink link = new Hyperlink("Click me");
String url = "https://www.google.com/";
link.setOnAction(a->getHostServices().showDocument(url));

它将自动在默认浏览器中打开页面。

,

您可以尝试处理所有异常。

export class App extends Component {
  state = {
    sideDrawerOpen: false
  };


  drawerToggleClickHandler = () => {
    this.setState((prevState) => {
      return { sideDrawerOpen: !prevState.sideDrawerOpen };
    });
  };

  sidedrawerToggleClickHandler = () => {
    this.setState({ sideDrawerOpen: false });
  }

  backdropClickHandler = () => {
    this.setState({ sideDrawerOpen: false });
  };

  componentDidMount() {
    this.setState({ sideDrawerOpen: false });
  };

  render() {
    let backdrop;
    if (this.state.sideDrawerOpen) {
      backdrop = <Backdrop click={this.backdropClickHandler} />
    }


    return (
      <div className="App_margin">
        <Router>
          <div className='App'>
            <Nav drawerClickHandler={this.drawerToggleClickHandler} />
            <SideDrawer  sidedrawerClickHandler={this.sidedrawerToggleClickHandler}  show={this.state.sideDrawerOpen} />
              { backdrop }
              < Switch >
              <Route path='/setup_page' component={setup_page} exact />
              <Route path='/main_page' component={main_page} />
              <Route path='/settings_page' component={settings_page} />
              <Route component={Error} />
      </Switch>

    </div>
        </Router>
      </div>
    );
  }
}
本文链接:https://www.f2er.com/2623429.html

大家都在问