Hej, jag är helt nybörjare i Java och har inte kommit så här långt än. Men jag undrar hur man får in en bild i mitten i min Javaapplet.
Bilder
8 svar · 286 visningar · startad av hajdo
Du får räkna lite själv för att få den i mitten, jag kan inte ge dig någon riktig kod, men här är lite egen komponerad syntax för att visa hur man ska räkna,
img.X=(applet.width/2)-(img.width/2)
img.Y=(applet.height/2)-(img.height/2)
/Viktor
Viktor skrev:
Du får räkna lite själv för att få den i mitten, jag kan inte ge dig någon riktig kod, men här är lite egen komponerad syntax för att visa hur man ska räkna,
img.X=(applet.width/2)-(img.width/2) img.Y=(applet.height/2)-(img.height/2)/Viktor
Men vad är urlen till bilden? Det måste den ju få veta...
Bilden har du väll redan i ett image objekt eller? Som sagt min kod går inte att använda i java, men den visar pinsipen bakom hur man cetrerar en bild i en applet.
/Viktor
Aha,nee jag har ingen bild än, jag undrar hur man sätter in en.
Det finns ett par sätt att göra det på. Här är ett:
import java.awt.Graphics;
import javax.swing.ImageIcon;
import javax.swing.JApplet;
public class Foo extends JApplet {
public void init() {
setSize( 100, 100 );
}
public void paint(Graphics g) {
ImageIcon image = new ImageIcon( getClass().getResource( "bildnamn" ) );
int hPos = ( getWidth() - image.getIconWidth() ) / 2;
int vPos = ( getHeight() - image.getIconHeight() ) / 2;
g.drawImage( image.getImage(), hPos, vPos, null );
}
}
:)
Det funkar inte, jag får bara fram en massa felmeddelanden om cannot resolve symbol... Vad e fel?
Jag testade att spara din applet och det funka, men det funka inte i min applet...
import javax.swing.JApplet;
import java.awt.Graphics;
import java.awt.Color;
import java.awt.Font;
import java.awt.FontMetrics;
import javax.swing.ImageIcon;
public class Game extends JApplet
{
public void init()
{
setSize(700,500); //Storlek på fönstret
setBackground(new Color(50,83,85)); //Bakrundsfärg
}
public void paint (Graphics g)
{
g.setFont(new Font("Mistral", Font.PLAIN, 60)); //Textstil och textstorlek
String str = "TANK-GAME"; //Text
FontMetrics fm = g.getFontMetrics(); //I mitten
int hPos = ( getWidth() - fm.stringWidth(str) ) / 2;
g.drawString(str, hPos, 80); //Vet inte
ImageIcon imag = new ImageIcon( getClass().getResource( "tank.gif" ) );
int HPos = ( getWidht() - image.getIconWidth() ) / 2;
int VPos = ( getHeight() - image.getIconHeight() ) / 2;
g.drawImage( image.getImage(), HPos, VPos, null );
}
}
Men åhh, nu funkade det när jag testade lite.