Как изменить плавающее изображение JToolbars
Существует ли простой способ изменить плавающее изображение JToolbars, например перетаскиваемое изображение в обработчиках переноса, без необходимости кодировать собственный обработчик переноса?
1 ответ
Очевидно paintDragWindow в ToolbarUI делает это.
Я использовал этот код, который создает изображение моей панели инструментов в виде плавающего img.
@Override
protected void paintDragWindow(Graphics g) {
BufferedImage img = getScreenShot(this.toolBar);
g.drawImage(img, 0, 0, null);
g.setColor(dragWindow.getBorderColor());
g.drawRect(0, 0, toolBar.getWidth() - 1, toolBar.getHeight() - 1);
System.out.println("paint drag window");
}
public static BufferedImage getScreenShot(Component component) {
BufferedImage image = new BufferedImage(component.getWidth(),
component.getHeight(), BufferedImage.TYPE_INT_RGB);
// call the Component's paint method, using
// the Graphics object of the image.
component.paint(image.getGraphics()); // alternately use .printAll(..)
return image;
}