Avatar billede rune.osterdal.com Nybegynder
19. maj 2005 - 15:37 Der er 5 kommentarer og
1 løsning

Paint i JPanel

Jeg har tidligere tegnet i JApplet vha
public void paint(Graphics g) {
    tegnXAkse(g);
    tegnYAkse(g, "Lånesum i tkr", 15, 1000); // y-akse
// osv osv osv
}
Men nu skal jeg så have tegningen i et JPanel i vores applikation.

hvis jeg har tre klasser
StatistikFrame der starter en Frame
Statistik der henter data fra db og gør dem klar i array til at kunne tegne søjler ud fra
StatistikVisual der har metoder til at tegne akser og søjler ud fra arrays fra førnævnte

i StatistikFrame står bl.a.
public static void main(String[] args) throws ClassNotFoundException {
    StatistikFrame sf = new StatistikFrame();
    Statistik stat = new Statistik();
    StatistikVisual statvis = new StatistikVisual();
}
og
private javax.swing.JPanel getJContentPane() {
    if(jContentPane == null) {
        jContentPane = new javax.swing.JPanel();
        jContentPane.setLayout(null);
        jContentPane.setPreferredSize(new java.awt.Dimension(580,380));
        jContentPane.add(getJPanel(), null);
    }
    return jContentPane;
}

Men hvordan kommer jeg til at tegne i mit JPanel med Graphics? Jeg har prøvet at sætte ovennævnte Paint ind (flere steder) men det får jeg jo ikke noget ud af..

Håber inderligt du kan hjælpe mig! :-D
Avatar billede rune.osterdal.com Nybegynder
19. maj 2005 - 16:09 #1
har prøvet at skifte ovenstående main ud med en paint men ved
Statistik stat = new Statistik(); siger den
Unhandled exception type ClassNotFoundException
når jeg så tilføjer
throws ClassNotFoundException understreges Paint og giver følgende fejl:
Exception ClassNotFoundException is not compatible with throws clause in Container.paint(Graphics)
så paint i stedet for main er nok ikke løsningen
Avatar billede arne_v Ekspert
19. maj 2005 - 17:38 #2
Jeg mener at man plejer at lave en klasse som extender JPanel og overrider paint.
Og så adder man en instans af den klasse til ens JFrame contentPane.
Avatar billede stephanryer Nybegynder
19. maj 2005 - 21:27 #3
Ja, det er præcis sådan man gør. Og i swings JPanel sørger den selv for double buffering (Page flipping).
Avatar billede rune.osterdal.com Nybegynder
20. maj 2005 - 10:07 #4
Det virker!
Tak for hjælpen.
(Da ingen af Jer har oprettet et svar vil jeg tillade mig at tage det som et udtryk for I ikke er interesserede i point.)
Avatar billede arne_v Ekspert
20. maj 2005 - 10:21 #5
det skal du ikke nødvendigvis regne med .....
Avatar billede rune.osterdal.com Nybegynder
21. maj 2005 - 16:18 #6
;-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester