I am using JXBrowser 6.22.
Browser browser = new Browser();
BrowserView view = new BrowserView(browser);
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.add(view, BorderLayout.CENTER);
frame.setSize(700, 500);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
browser.loadURL("https://nf-test-jv.blogspot.com/");
TimeUnit.SECONDS.sleep(20);
browser.getDocument().findElement(By.cssSelector("#ReportAbuse1 > h3.title > a.report_abuse")).click();
TimeUnit.SECONDS.sleep(10);
frame.dispose();
When I execute the command click
browser.getDocument().findElement(By.cssSelector("#ReportAbuse1 > h3.title > a.report_abuse")).click();
The program will create a new frame pane

When I execute frame.dispose(); it only closes the initial frame 1.Frame 2 doesn't close. How can I close everything when I want. Please help me
Check out the
Frame.getFrames()method. It gives a list of all the created frames by the application.I would guess you could iterate through the Array to find the frame containing your Browser component and dispose() of that frame manually.
You would need to add a
WindowListenerto your main frame and handle thewindowClosing(...)method to implement the above logic.