Ich versteh diese ganze Logik von der dieser beknackten paint-Methode nicht. In allen Biespielen wird die Methode nicht aufgerufen, aber angeblich soll das Bild als hintergrund ausgegeben werden.
Bei meinem code klappt das nicht:
Wie geht das? bzw. was mach ich falsch?
Bei meinem code klappt das nicht:
Code:
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.GridLayout;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.image.ImageObserver;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import javax.swing.SpringLayout;
import sun.awt.RepaintArea;
public class Login {
public static void main(String[] args) {
JFrame frame;
JLabel acctxt;
JLabel passtxt;
JTextField acc;
JPasswordField pass;
JButton ok;
JButton abort;
JPanel panel;
SpringLayout layout;
acctxt = new JLabel("Account:");
acc = new JTextField(20);
passtxt = new JLabel("Passwort:");
pass = new JPasswordField(20);
ok = new JButton("Login");
abort = new JButton("Abbruch");
panel = new JPanel();
layout = new SpringLayout();
//Zeile 1 - Account
layout.putConstraint(SpringLayout.WEST,acctxt,5,SpringLayout.WEST,panel);
layout.putConstraint(SpringLayout.NORTH,acctxt,5,SpringLayout.NORTH,panel);
layout.putConstraint(SpringLayout.WEST, acc,13,SpringLayout.EAST, acctxt);
layout.putConstraint(SpringLayout.NORTH,acc,5,SpringLayout.NORTH,panel);
//Zeile 2 - Passwortfeld
layout.putConstraint(SpringLayout.WEST,passtxt,5,SpringLayout.WEST,panel);
layout.putConstraint(SpringLayout.NORTH,passtxt,30,SpringLayout.NORTH,panel);
layout.putConstraint(SpringLayout.WEST, pass,5,SpringLayout.EAST, passtxt);
layout.putConstraint(SpringLayout.NORTH,pass,30,SpringLayout.NORTH,panel);
frame = new JFrame("Login");
//Zeile 3 - Buttons
layout.putConstraint(SpringLayout.WEST,ok,75,SpringLayout.WEST,panel);
layout.putConstraint(SpringLayout.NORTH,ok,55,SpringLayout.NORTH,panel);
layout.putConstraint(SpringLayout.WEST, abort,50,SpringLayout.EAST, ok);
layout.putConstraint(SpringLayout.NORTH,abort,55,SpringLayout.NORTH,panel);
panel.setLayout(layout);
panel.add(acctxt);
panel.add(acc);
panel.add(passtxt);
panel.add(pass);
panel.add(ok);
panel.add(abort);
frame.setContentPane(panel);
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(310,120);
frame.setVisible(true);
}
public void paint(Graphics g)
{
Image pic;
pic = Toolkit.getDefaultToolkit().getImage("hintergrund.jpg");
g.drawImage(pic,0,0,(ImageObserver) this);
}
}
Wie geht das? bzw. was mach ich falsch?