成人视屏在线观看-国产99精品-国产精品1区2区-欧美一级在线观看-国产一区二区日韩-色九九九

您的位置:首頁技術文章
文章詳情頁

Java。將ImageIcon從面板1的JLabel拖放到面板2的JLabel。添加計數器功能

瀏覽:46日期:2024-05-04 14:24:45
如何解決Java。將ImageIcon從面板1的JLabel拖放到面板2的JLabel。添加計數器功能?

這基本上是@Andrew的評論的概述-由于您的SSCCE,很容易實現:-)

子類TransferHandler,重寫canImport以檢查源標簽是否在imageSelect面板上,如果不是,則拒絕。

// custom transferHandler which decides about imports based on source TransferHandler handler = new TransferHandler('icon') {@Overridepublic boolean canImport(TransferSupport support) { return super.canImport(support) && support.getComponent().getParent() != imageSelectPanel;} }; // use the handler on all labels (handlers can be shared, btw) // for each label on imageSelectPanel imageSelectLabel.setTransferHandler(handler) // for each label on the target panel (aka storyPanel) storyLabel.setTransferHandler(handler)解決方法

我已經在兩個JPanel之間實現了這種非?;镜耐戏挪僮鳎@并不能真正滿足我的要求!

public class test extends JFrame {{ JPanel mainpanel,storypanel,imageselect; public test(){ mainpanel = new JPanel(new BorderLayout()); storypanel = new JPanel(); imageselect = new JPanel(); MouseListener listener = new MouseAdapter(){ public void mousePressed(MouseEvent e){ JComponent c = (JComponent) e.getSource(); TransferHandler handler = c.getTransferHandler(); handler.exportAsDrag(c,e,TransferHandler.COPY);}}; int j = 0; BufferedImage myImages; JLabel imgselect = new JLabel(); try { myImages = ImageIO.read(new File('four.jpg')); //myImages[j] = resize(myImages[j]); imgselect= new JLabel(new ImageIcon(myImages)); System.out.println(j); imageselect.add(imgselect); imgselect.addMouseListener(listener); imgselect.setTransferHandler(new TransferHandler('icon')); } catch(Exception e) {}; int i = 0; BufferedImage storyimages; JLabel storylabel = new JLabel(); //targetImg = new ImageIcon('lmkpackage/base/TargetImg.jpg'); try{ storyimages = ImageIO.read(new File('TargetImg.jpg')); //storyimages[i] = resize(storyimages[i]); storylabel = new JLabel(new ImageIcon(storyimages)); System.out.println(i); storypanel.add(storylabel); storylabel.addMouseListener(listener); storylabel.setTransferHandler(new TransferHandler('icon')); } catch(Exception e) {}; mainpanel.add(imageselect,BorderLayout.NORTH); mainpanel.add(storypanel,BorderLayout.SOUTH); getContentPane().add(mainpanel);}public static void main(String[] args){System.out.println('Application Running');JFrame mainframe = new test(); mainframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);mainframe.setSize(1000,1000); mainframe.setVisible(true);} }

對不起,我在這里不太清楚。我試圖將ImageIcon從imageselect面板上的JLabel拖動到故事情節面板上的另一個JLabel。我可以使用上面的代碼來做到這一點。但是,當我這樣做時,可以從imageselect面板中拖動一個ImageIcon,然后在同一面板上替換另一個ImageIcon。我不希望這種情況發生。我也可以從故事情節面板拖到不需要的圖像選擇面板。

我并不是要成為傻瓜式的代碼,我只是在尋找正確的方向!

編輯:我想知道有什么方法可以計算成功的拖放操作,下面的解決方案回答了我的原始問題。

標簽: java
相關文章:
主站蜘蛛池模板: 九九亚洲视频 | 国产91精品一区二区麻豆亚洲 | 国产在线不卡午夜精品2021 | 欧美成人猛男性色生活 | 日本乱理伦中文三区 | 中文字幕久久亚洲一区 | 久久午夜国产片 | 免费观看成年人网站 | 一区两区三不卡 | 亚洲品质自拍网站 | 日本一区二区三区四区公司 | 国产欧美一区视频在线观看 | 毛片手机在线视频免费观看 | 男人精品一线视频在线观看 | 久久综合免费视频 | 欧美一级在线全免费 | 全国男人的天堂天堂网 | 三级大片网站 | 欧美a级在线 | 欧美最爽乱淫视频播放黑人 | 欧美成人免费一区在线播放 | 成人a毛片一级 | 国产欧美一区二区三区在线 | 91国内视频 | 亚洲精品线在线观看 | 欧美高清强视频 | 亚洲国产精品久久久久久 | 国产精品大全国产精品 | 国产精品免费视频能看 | 国内三级视频 | 三级三级三级网站网址 | 久久精品国产精品亚洲综合 | 欧美高清视频在线观看 | 综合欧美日韩一区二区三区 | 亚洲精美视频 | 国产欧美亚洲三区久在线观看 | 精品国产欧美一区二区最新 | 国产精品资源在线 | 中国美女乱淫免费看视频 | 日韩国产欧美成人一区二区影院 | 一本高清 |