webForumDet fria alternativet

BufferedImage

Java

5 svar · 174 visningar · startad av pettsson

Medlem sedan jan. 20021 122 inlägg
Frågan#1

Hur visar jag en BufferedImage i min JFrame? Om jf är en JFrame kan man ju inte skriva jf.add(minBufferedImage);, hur konverterar man den till en image?

Medlem sedan aug. 20021 752 inlägg
#2

Image är BufferedImage super klass så en BufferedImage är en Image :)
Du kan altså rita upp en bild t.ex. såhär

BufferedImage bi=new BufferedImage();
JFrame frame=new JFrame();
frame.getGraphics().drawImage(bi,10,10,null);

/Viktor

Medlem sedan jan. 20021 122 inlägg
#3

Får en null pointer exception. Varför? Måste man fylla i bilden innan man ritar den?

Medlem sedan aug. 20021 752 inlägg
#4

Det ska man inte behöva göra, här är ett test program som jag har gjort som ritar en gul linje över bilden. Jag har även provat utan att rita något och det fungerar lika bra,

import java.awt.Color;
import java.awt.Graphics;
import java.awt.image.BufferedImage;

import javax.swing.JFrame;

public class BI extends JFrame
{
	public static void main(String argv[])
	{
		new BI();
	}
	
	public BI()
	{
		setSize(200,200);
		show();
		setDefaultCloseOperation(EXIT_ON_CLOSE);
		
		BufferedImage bi=new BufferedImage(200,200,BufferedImage.TYPE_INT_RGB);
		Graphics g=bi.getGraphics();
		g.setColor(Color.YELLOW);
		g.drawLine(20,20,100,100);
		this.getGraphics().drawImage(bi,0,0,Color.BLUE,null);
	}
}

/Viktor

Medlem sedan jan. 20021 122 inlägg
#5

Programmet jag håller på med ska rita upp en fraktal är det tänkt, vilket betyder många uträkningar. Därför tänkte jag att man plottar ut en pixel så fort den är beräknad, men det funkar inte... Även efter det att programmet är klart med räknandet är fönstret tomt :(

Medlem sedan jan. 20021 122 inlägg
#6

Har fixat till det nu, utan bufferedimage, men tack ändå :)

258 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)