Ik heb een zo'n simpel mogelijke Java applicatie geschreven die cirkels op een JPanel moet tekenen. Het lukt mij niet om de achtergrond kleur van dit JPanel te wijzigen, ondanks dat ik de methode setBackground aanroep om de achtergrond zwart te maken. Kan iemand mij vertellen wat ik verkeerd doe? (Het tekenen van de cirkels werkt overigens wel goed)
Kleine opmerking: De achtergrondkleur van het JFrame wijzigen zorgt ervoor dat de achtergrondkleur van het JPanel gelijk is aan de kleur van het JFrame.
en voor de zekerheid ook nog de code van de applicatieklasse:
Kleine opmerking: De achtergrondkleur van het JFrame wijzigen zorgt ervoor dat de achtergrondkleur van het JPanel gelijk is aan de kleur van het JFrame.
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
| public class AnimationPanel extends JPanel{ public AnimationPanel() { setPreferredSize(new Dimension(200,200)); setBackground(Color.BLACK); addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent evt) { panelClick(evt); } }); } private void panelClick(MouseEvent evt) { clicked = evt.getPoint(); repaint(); } public void paint(Graphics g) { if(clicked != null && isShowing()) { g.setColor(Color.WHITE); g.drawOval((int)clicked.getX(), (int)clicked.getY(), 10, 10); } } private Point clicked = null; } |
en voor de zekerheid ook nog de code van de applicatieklasse:
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| public class SimpleAnimation extends JFrame { public static void main(String[] args) { new SimpleAnimation().show(); } public SimpleAnimation() { initComponents(); } private void initComponents() { Container contentPane = getContentPane(); AnimationPanel animationPanel = new AnimationPanel(); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent evt) { exitForm(evt); } }); contentPane.add(animationPanel, BorderLayout.CENTER); pack(); } private void exitForm(WindowEvent evt) { System.exit(0); } } |
[ Voor 12% gewijzigd door Verwijderd op 29-12-2002 15:29 ]