Witam, napisałem prostą aplikację do wyświetlania zdjęć na dysku o to fragment kodu
fileTree.addTreeSelectionListener(new TreeSelectionListener()
{
public void valueChanged(TreeSelectionEvent event)
{
File file = (File) fileTree.getLastSelectedPathComponent();
path=fileTree.getSelectionPath();
System.out.println(file.getPath());
System.out.println(Toolkit.getDefaultToolkit().getImage(file.getPath()));
Toolkit toolkit = Toolkit.getDefaultToolkit();
//image1 = toolkit.getImage(file.getPath());
Toolkit tk = null;
ToolkitImage tk1;
tk1.getGraphics().
Image image = tk.getDefaultToolkit().getImage (file.getPath());
// java.net.URL url = this.getClass().getResource(file.getPath());
// image1 = Toolkit.getDefaultToolkit().getImage(url);
// Image img = getImage(file.getPath());
// image1 = getToolkit().getImage(file.getPath());
// fileTree.getGraphics().drawImage(image1, 10, 10, observer);
Color blue =new Color(250,250,250);
jp.setBackground(blue.blue);
// observer.imageUpdate(image1, 4, 4, 4, 300, 300);
System.out.println(jp.getGraphics().drawImage(image,10,10,observer));
//fileTree.paint(g.drawImage(image, 10,10,this));
}
}
);
chodzi o to że gdy klikam na zdjęcie dopiero za czwartym razem jak klikam wyświetla się
z System.out.println(jp.getGraphics().drawImage(image,10,10,observer)); widać że wyświetla zmienną która dopiero za trzecim razem przybiera stałą postać dla zdjęciaz konsoli: sun.awt.image.ToolkitImage@be2358
/home
sun.awt.image.ToolkitImage@1add2dd
false
/home/marc
sun.awt.image.ToolkitImage@194df86
false
/home/marc/Desktop
sun.awt.image.ToolkitImage@1cde100
false
/home/marc/Desktop/linux-wallpaper-002.jpg
sun.awt.image.ToolkitImage@360be0
false
/home/marc/Desktop/linuxeye.jpg
sun.awt.image.ToolkitImage@45a877
false
/home/marc/Desktop/linux-wallpaper-002.jpg
sun.awt.image.ToolkitImage@1372a1a
false
/home/marc/Desktop/linuxeye.jpg
sun.awt.image.ToolkitImage@ad3ba4
false
/home/marc/Desktop/linux-wallpaper-002.jpg
sun.awt.image.ToolkitImage@1372a1a
true
/home/marc/Desktop/linuxeye.jpg
sun.awt.image.ToolkitImage@ad3ba4
true
/home/marc/Desktop/linux-wallpaper-002.jpg
sun.awt.image.ToolkitImage@1372a1a
true
/home/marc/Desktop/ping-pistegge.jpg
sun.awt.image.ToolkitImage@1c78e57
false
/home/marc/Desktop/linux-wallpaper-002.jpg
sun.awt.image.ToolkitImage@1372a1a
true
/home/marc/Desktop/ping-pistegge.jpg
sun.awt.image.ToolkitImage@1c78e57
true
/home/marc/Desktop/mp3
sun.awt.image.ToolkitImage@f6a746
false
/home/marc/Desktop
sun.awt.image.ToolkitImage@15ff48b
false
/home/marc
sun.awt.image.ToolkitImage@affc70
false
/home/marc/Desktop/ping-pistegge.jpg
sun.awt.image.ToolkitImage@1c78e57
true
jak to naprawić, i przy okazji jak odświeżać wyświetlanie zdjęcia? gdyby były jakieś nie domówienia z mojej strony proszę pisać postaram się rozwinąć wątek...