Я пытаюсь заставить Drag and Drop работать с JxBrowser в Linux.Я хочу, чтобы на одной вкладке можно было перетаскивать компоненты свинга, а на другой вкладке - jxbrowser.Однако при добавлении jxbrowser на другую вкладку перестает работать перетаскивание.
Этот код воспроизводит проблему при попытке перетащить метку на вкладку «Текст»:
public class TabbedPaneSample {
public static void main(String[] args) {
Browser browser = new Browser(BrowserType.HEAVYWEIGHT);
JLabel label = new JLabel("Label Text");
label.setTransferHandler(new TransferHandler("text"));
label.addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent evt) {
JComponent comp = (JComponent) evt.getSource();
TransferHandler th = comp.getTransferHandler();
th.exportAsDrag(comp, evt, TransferHandler.COPY);
}
});
JTabbedPane tabbedPane = new JTabbedPane();
tabbedPane.addTab("Browser", new BrowserView(browser));
tabbedPane.addTab("Text", label);
JFrame frame = new JFrame();
frame.getContentPane().add(tabbedPane, BorderLayout.CENTER);
frame.setSize(800, 600);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
browser.loadURL("https://www.google.com");
}
}
Изменение *От 1006 * до BrowserType.LIGHTWEIGHT
заставляет это работать.
Можно ли как-то обойти эту проблему?