Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8115961

FileChooser won't work with swing integration

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: P3 P3
    • fx2.0
    • fx2.0
    • javafx
    • None
    • java6
      fx b42
      windows 7

      To reproduce run following code and press button. Open dialog doesn't appear



      import java.awt.AWTException;
      import java.awt.Dimension;
      import javafx.application.Platform;
      import javafx.embed.swing.JFXPanel;
      import javafx.event.ActionEvent;
      import javafx.event.EventHandler;
      import javafx.scene.Parent;
      import javafx.scene.Scene;
      import javafx.scene.control.Button;
      import javafx.scene.layout.HBox;
      import javafx.stage.FileChooser;
      import javafx.stage.Stage;
      import javax.swing.JFrame;
      import javax.swing.SwingUtilities;

      public class ButtonText {

          public static void main(final String[] args) throws AWTException {

              SwingUtilities.invokeLater(new Runnable() {

                  @Override
                  public void run() {
                      JFrame frame = new JFrame("HelloWorldSwing");
                      final JFXPanel panel = new JFXPanel();
                      panel.setPreferredSize(new Dimension(550, 400));
                      frame.getContentPane().add(panel);
                      createScene(panel);

                      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                      frame.pack();
                      frame.setVisible(true);
                  }

                  private void createScene(final JFXPanel panel) {
                      Platform.runLater(new Runnable() {

                          @Override
                          public void run() {
                              panel.setScene(new Scene(getContent(null), 400, 400));
                          }
                      });
                  }
              });

          }

          private static Parent getContent(final Stage stg) {


              Button openButton = new Button("Open file");
              openButton.setOnAction(new EventHandler<ActionEvent>() {

                  @Override
                  public void handle(ActionEvent t) {
                      new FileChooser().showOpenDialog(stg);
                  }
              });

              HBox list = new HBox(10);
              list.getChildren().add(openButton);
              return list;
          }
      }

            anthony Anthony Petrov (Inactive)
            anazarov Andrey Nazarov (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported: