Hey, voordat ik mijn vraag stel, ik heb vrijwel geen ervaring met Java, ik ben het nu aan het leren vanuit een boek.
In het boek word er een voorbeeld gegeven, maar ik wil er graag iets aan veranderen.
Dan nu mijn vraag: Hoe kan ik in het voorbeeld hieronder, de plaats van paintComponent zetten.
Op dit moment kan ik mijn JLabels etc een mooie plaats geven ( heb ik nog niet gedaan) maar ik wil de uitvoer van paintComponent kunnen veranderen, kan iemand mij hierbij helpen?
Mainclass:
De class waar het volgens mij om gaat:
In het boek word er een voorbeeld gegeven, maar ik wil er graag iets aan veranderen.
Dan nu mijn vraag: Hoe kan ik in het voorbeeld hieronder, de plaats van paintComponent zetten.
Op dit moment kan ik mijn JLabels etc een mooie plaats geven ( heb ik nog niet gedaan) maar ik wil de uitvoer van paintComponent kunnen veranderen, kan iemand mij hierbij helpen?
Mainclass:
Code:
import javax.swing.*;
import javax.swing.border.*;
import java.awt.*;
import java.awt.event.*;
public class Vb0201 extends JFrame {
public static void main(String[] args) {
JFrame frame = new Vb0201();
frame.setSize(600, 600);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setTitle("Test");
JPanel paneel = new Paneel();
frame.setContentPane (paneel);
frame.setVisible(true);
}
}
De class waar het volgens mij om gaat:
Code:
import javax.swing.*;
import javax.swing.border.*;
import java.awt.*;
import java.awt.event.*;
class Paneel extends JPanel{
private JTextField inlegVak, renteVak;
private JButton knop;
private double inleg, renteFactor;
private int jaar;
private JLabel inlegLabel, renteLabel;
public Paneel() {
//BELANGRIJK SET LAYOUT NULL
setLayout(null);
inlegVak = new JTextField (10);
inlegLabel = new JLabel ("Inleg");
renteVak = new JTextField (10);
renteLabel = new JLabel ("Rentepercentage");
knop = new JButton ("Bereken");
knop.addActionListener(new KnopHandler());
inlegLabel.setBounds (30,40,90,20);
inlegVak.setBounds (110,40,90,20);
renteLabel.setBounds (30,90,90,20);
renteVak.setBounds (110,90,90,20);
add (inlegLabel);
add (inlegVak);
add (renteLabel);
add (renteVak);
add (knop);
}
public void paintComponent (Graphics g) {
super.paintComponent (g);
g.setFont (new Font ("Courier", Font.BOLD, 14));
double bedrag = inleg;
jaar = 2007;
int y = 50;
g.drawString ("Rentefactor: " + renteFactor, 80, y);
y += 15;
while (bedrag < 2 * inleg ) {
g.drawString (
String.format ("%5d:%10.2f", jaar, bedrag), 80, y +=15);
jaar ++;
bedrag *= renteFactor;
}
}
class KnopHandler implements ActionListener {
public void actionPerformed (ActionEvent e) {
String invoer1 = inlegVak.getText();
inleg = Double.parseDouble (invoer1);
String invoer2 = renteVak.getText ();
renteFactor = 1 + Double.parseDouble (invoer2) / 100;
repaint();
}
}
}
Laatst bewerkt: