0

画像をドラッグ アンド ドロップできる Java スイング パネルを作成しようとしています。そして、パネルに表示された画像を保存します。私はこれを見つけました。これは私を大いに助けると思います。しかし、Windows 7を搭載した私のコンピューターでは機能しません。画像をアプリケーションにドラッグできません。アドバイスをいただければ幸いです。ありがとう

4

1 に答える 1

2

ルール 1、理解できないことをいじらないでください ;)

ルール 2、成功するまで偽装する ;)

メソッドを次のように置き換えinitComponentsます...

private void initComponents() {

    listScroller = new javax.swing.JScrollPane();

    imageList = new JList();
    imageList.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
    imageList.setLayoutOrientation(javax.swing.JList.HORIZONTAL_WRAP);
    imageList.setVisibleRowCount(-1);
    listScroller.setViewportView(imageList);

    setLayout(new BorderLayout());
    add(listScroller);
}// </editor-fold>//GEN-END:initComponents

コンストラクターで、「ドロップ ペイン」GlassPaneDragAndDropのメソッドを次のように置き換えます。paintComponent

setContentPane(new JPanel(new BorderLayout()) {
    private BufferedImage image = null;

    @Override
    public boolean isOpaque() {
        return imageList.getModel().getSize() > 0;
    }

    @Override
    protected void paintComponent(Graphics g) {
        Rectangle clip = g.getClipBounds();

        g.setColor(Color.WHITE);
        g.fillRect(clip.x, clip.y, clip.width, clip.height);
    }
});

これにより、実行できるようになります。Windows 7 では、結果が気に入らないかもしれませんが....

于 2013-02-28T06:10:21.523 に答える