Datamaskin
  | Hjem | Hardware | Nettverk | Programmering | Software | Feilsøking | Systems | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringsspråk
  • Delphi Programming
  • Java Programming
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl Programming
  • Python Programming
  • Ruby Programming
  • Visual Basics Programming
  •  
    Datamaskin >> Programmering >> Java Programming >> Content
    Hvordan Tegn et sektordiagram i Java
    Selv om JavaFX språket inneholder et verktøy for enkelt å lage kakediagram , vanlige Java gir ingen slik enkel funksjonalitet. I stedet må du designe din egen klasse for etablering av kakediagram ved hjelp av Java-språket . Nøkkelen til oppgaven vil være den Graphics2D klassen bygget inn i standard Java AWT bibliotek . Instruksjoner
    en

    Opprett en ny klasse . Hvis du bruker en Integrated Development Environment ( IDE ) , klikker du bare på "File ", " New Class. " Ellers åpent Notepad eller en teksteditor av valg og lagre filen som " PieChart.java . "
    2

    Import bibliotekene du vil trenge inn i programmet fra Java standard biblioteket ved å lime inn følgende :

    import java.awt.Color , import java.awt.Graphics , import java.awt.Graphics2D , import java.awt.Rectangle , import java.awt.geom.Rectangle2D , import java.util.ArrayList ; import javax.swing.JFrame ;
    3

    Lim inn følgende for å opprette PieChart klasse : en

    /*** Tegner et kakediagram * /public class PieChart strekker . JFrame {

    ArrayList skiver = new ArrayList ();

    Rectangle2D rect ;

    public void addSlice ( dobbel verdi , Color farge)

    public void uavgjort ( Graphics2D g, Rectangle2D område)

    public void init ();

    @ Overridepublic void paint (Graphics g )

    public static void main ( String [] args )

    /*** Dette representerer dataene for en bit av kaken . * /private class PieSlice

    }

    resten av opplæringen vil dekke fylling i koden for hver metode beskrevet i koden ovenfor .
    4

    Gjennomføre PieSlice privat klasse . Dette vil holde dataene for hver " skive " av kakediagram . Lim inn følgende kode : . .

    Private class PieSlice {double verdi; Color farge ;

    /*** Den del av kaken * @ param verdi Størrelsen på skive * @ param fargen ønsket for stykket * /public PieSlice ( dobbel verdi , Color farge) { this.color = farge, this.value = verdi ;} .

    }
    5

    gjennomføre addSlice metoden ved å lime inn følgende kode :

    public void addSlice ( dobbel verdi , Color farge) { slices.add ( ny PieSlice (verdi, farge )); }

    bare skaper en ny PieSlice og legger det til stykket liste ArrayList
    6

    Gjennomføre init metoden ved å lime inn følgende: .

    public void init ( ) {

    dette . setSize ( 800600 ) ; this.setVisible ( true); rect = new rektangel ( 100 , 100 , 600 , 480 ) ;

    };
    7

    Implementere trekningen metoden lime inn følgende kode :

    public void uavgjort ( Graphics2D g, Rectangle2D område) {double pieSize = 0; for ( PieSlice skive : skiver ) { pieSize + = slice.value ;} dobbel CurrentValue = 0 ; int startAngle = 0 ; int arcAngle = 0; for ( PieSlice skive : skiver ) { startAngle = ( int ) ( CurrentValue * 360 /pieSize ) ; arcAngle = ( int ) ( slice.value * 360 /pieSize ) ;

    //Hvis dette er det siste stykket , gjør dette for å sikre at det ikke gaps.if ( slice.equals ( slices.get ( slices.size ( ) -1 ) ) ) { arcAngle = 360 - startAngle ;}
    < p> g.setColor ( slice.color ); g.fillArc ( ( int ) area.getMinX ( ) , ( ​​int ) area.getMinY ( ) , ( ​​int ) area.getWidth ( ) , ( ​​int ) area.getHeight ( ) , startAngle , arcAngle ) ; CurrentValue + = slice.value ;}

    }
    p Dette er arbeidshesten av programmet. Det går gjennom hver bit av kaken diagrammet og trekker en farget bue som tilsvarer sin andel av kaken .
    8

    Gjennomføre maling metode som PieChart klassen vil få fra JFrame superklassen . Alt den gjør er å ringe trekningen metoden hver gang en oppdatering er nødvendig : en

    @ Overridepublic void paint (Graphics g ) { tegne ( ( Graphics2D ) this.getGraphics ( ) , rect ) ;}

    9

    Lag en viktig metode for å teste klassen og sikre at det fungerer :

    public static void main ( String [] args ) { PieChart diagram = new PieChart (); chart.init ();

    chart.addSlice ( 10 , Color.RED ) ; chart.addSlice ( 7 , Color.BLUE ) ; chart.addSlice ( 3 , Color.GREEN ) ; chart.addSlice ( 15 , Color.ORANGE );

    }

    früher :

     Weiter:
      Relatert Artike
    ·Java for å konvertere heltall til tegn 
    ·Lamda funksjoner i Java 
    ·Slik konverterer Streamsource til en String i Java 
    ·Hvordan få Tastbordkommandoer i Java 
    ·Hva kan blokkere Java slik at den ikke virker 
    ·Sammenligning av kart vs List i Java 
    ·Hvordan lage Turn- Based Games 
    ·NetBeans søkefunksjon 
    ·Slik kjører Java Beans 
    ·Definisjon av Java & Javascript 
      Anbefalte artikler
    ·Hvordan Ring en PHP fil i en tabell 
    ·Hvordan få tilgang til NetBeans Resource Directory 
    ·Hvordan laste ned Java JDK 
    ·Hvordan Inkluder et prefiks til en Tapestry brenner 
    ·Hvordan erstatte en database i XML 
    ·Om Java Virtual Machine 
    ·Hvordan få verdier fra ListBox å Send til SQL 
    ·Hvordan endre skrifttype farger med Javascript 
    ·Hvordan å lære Python for Free 
    ·Hvordan lage Click & dra objekter i Visual Basic 
    Copyright ©  Datamaskin  http://www.datamaskin.biz/