Ahoj,
trochu zjednodusim, co bych potreboval udelat:
mam JFrame, kde mam JPanely, JBUttons atd.
Potreboval bych udelat, aby se me po stisknuti tlacitka vykreslil do jednoho JPanelu bar chart. Jak vytvorit ten bar chart vim, ale nevim, jak vytvorit tu vlastni metodu, ktera jej bude vykreslovat a kterou budu volat po stisknuti tlacitka se dvema parametry (int pole[], int max), ktere budou slouzit pro vlastni konstrukci grafu.
Jedine, co jsem nasel aspon trochu pribuzne, je tato class:
class OurContent extends JPanel {
public void paintComponent ( Graphics gr){
super.paintComponent ( gr ) ;
gr.setColor ( new Color ( 0, 0, 255) );
for(int i=0;i<200;i+=10){
gr.fill3DRect(10+i, 30, 7, 230, true);
}
}
//OurContent(){}
}
kterou muzu volat pouze bez parametru kdyz tvorim vzhled programu jako canvas = new OurContent(); , kde canvas je JLabel
Diky za kazdou radu, Dave
Fórum › Java
Swing + funkce pro kresleni
Toto je moje trida, kterou kreslim ten bar chart a ja bych ji potreboval nejak upravit, abych do ni posilal parametr int pole[] a int max
class OurContent extends JPanel {
public void paintComponent ( Graphics g){
super.paintComponent ( g ) ;
int pole[] = {8,3, 5, 7, 22, 20, 14, 12};
int max=22;Toto je moje trida, kterou kreslim ten bar chart a ja bych ji potreboval nejak upravit, abych do ni posilal parametr int pole[] a int max
class OurContent extends JPanel {
public void paintComponent ( Graphics g){
super.paintComponent ( g ) ;
int pole[] = {8,3, 5, 7, 22, 20, 14, 12};
int max=22;
int y=40;
g.setColor ( new Color ( 0, 0, 0) );
//osa y
g.drawLine ( 20, y-5, 20, 200 ) ;
//osa x
g.drawLine ( 20-5, y, 270, y ) ;
g.setColor ( new Color ( 0, 0, 255) );
for(int i=0;i<8;i++){
g.fill3DRect(20, y, pole[i]*(250/max),7 , true);
y+=15;
}
}
int y=40;
g.setColor ( new Color ( 0, 0, 0) );
//osa y
g.drawLine ( 20, y-5, 20, 200 ) ;
//osa x
g.drawLine ( 20-5, y, 270, y ) ;
g.setColor ( new Color ( 0, 0, 255) );
for(int i=0;i<8;i++){
g.fill3DRect(20, y, pole[i]*(250/max),7 , true);
y+=15;
}
}
Toto je moje trida, kterou kreslim ten bar chart a ja bych ji potreboval nejak upravit, abych do ni posilal parametr int pole[] a int max
class OurContent extends JPanel {
public void paintComponent ( Graphics g){
super.paintComponent ( g ) ;
int pole[] = {8,3, 5, 7, 22, 20, 14, 12};
int max=22;
int y=40;
g.setColor ( new Color ( 0, 0, 0) );
//osa y
g.drawLine ( 20, y-5, 20, 200 ) ;
//osa x
g.drawLine ( 20-5, y, 270, y ) ;
g.setColor ( new Color ( 0, 0, 255) );
for(int i=0;i<8;i++){
g.fill3DRect(20, y, pole[i]*(250/max),7 , true);
y+=15;
}
}
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Java swing: Přepsání metody setLayout() pro potomky JFrame — založil Aleš
JavaFX - tvorba nástroje pro kreslení diagramů — založil Radek C
Funkce pro web — založil stoker303
Funkce pro převod soustav v C# — založil Antondias
Nefunguji funkce pro praci s db — založil tribalcz
Moderátoři diskuze