拖动时更改组件背景
Changing component background while dragging over it
我有一个 JPanel
配置为拖放区,允许用户将文件拖放到其中以便进行分析。现在我想在将文件拖到面板上时更改该面板的背景颜色。
如何做到这一点?
一种方法是添加 DropTarget
。像这样:
yourJpanel.setDropTarget(new DropTarget() {
@Override
public synchronized void drop(DropTargetDropEvent dtde)
{
this.changeToNormal();
//handle the drop ....
}
@Override
public synchronized void dragEnter(DropTargetDragEvent dtde){
//Change JPANEL background...
yourJpanel.setBackground(Color.RED);
}
@Override
public synchronized void dragExit(DropTargetEvent dtde) {
this.changeToNormal();
}
private void changeToNormal() {
//Set background to normal...
yourJpanel.setBackground(Color.WHITE);
}
});
我有一个 JPanel
配置为拖放区,允许用户将文件拖放到其中以便进行分析。现在我想在将文件拖到面板上时更改该面板的背景颜色。
如何做到这一点?
一种方法是添加 DropTarget
。像这样:
yourJpanel.setDropTarget(new DropTarget() {
@Override
public synchronized void drop(DropTargetDropEvent dtde)
{
this.changeToNormal();
//handle the drop ....
}
@Override
public synchronized void dragEnter(DropTargetDragEvent dtde){
//Change JPANEL background...
yourJpanel.setBackground(Color.RED);
}
@Override
public synchronized void dragExit(DropTargetEvent dtde) {
this.changeToNormal();
}
private void changeToNormal() {
//Set background to normal...
yourJpanel.setBackground(Color.WHITE);
}
});