Swing Prozentwerte grafisch darstellen - wie?

Status
Nicht offen für weitere Antworten.

Mr.Radar

Mitglied
Hallo,

ich habe folgendes Problem: Ich habe einen Datensatz in dem u.a. auch vier versch. Farbwerte (jeweils ein Prozentwert) gespeichert sind. Ich würde diese in meiner SWING-Gui gerne grafisch in Form eines Balkens in der jeweiligen Farbe in je nach Prozentwert passender Länge darstellen.

Meine Frage:
Bleibt mir nichts anderes über als diese Balken selbst zu zeichnen (ggf. eine eigene Component erstellen, wie in den FAQs oder im sticky tutorial erwähnt), oder gibts da schon was fertiges bzw. irgendwelche anderen Kunstgriffe/Zweckentfremdungen (z.b. über JProgrssBars o.ä.?!) ?
 

Marco13

Top Contributor
Abgesehen davon, dass die Einfärbung der ProgressBar u.U. frickeliger wird, als das mal kurz mit drawRect selbst hinzumalen....
 

javimka

Top Contributor
Huhu, habe im Moment eh nichts besseres zu tun gewusst :D

Java:
import java.awt.Color;
import java.awt.Graphics;

import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.SwingUtilities;

public class ColorPanel extends JComponent {

	private static final long serialVersionUID = 20910211819L;
	
	private int r,g,b,a;
	
	public ColorPanel() {
		this(0,0,0,0);
	}
	
	public ColorPanel(int r, int g, int b, int a) {
		this.r = r;
		this.g = g;
		this.b = b;
		this.a = a;
	}
	
	@Override
	public void paintComponent(Graphics gg) {
		int height = getHeight();
		int width = getWidth()*7/8;
		
		gg.setColor(Color.RED);
		gg.fillRect(0,2,width*r/255,height/4-4);
		
		gg.setColor(Color.GREEN);
		gg.fillRect(0,height/4+2,width*g/255,height/4-4);
		
		gg.setColor(Color.BLUE);
		gg.fillRect(0,2*height/4+2,width*b/255,height/4-4);
		
		gg.setColor(Color.BLACK);
		gg.fillRect(0,3*height/4+2,width*a/255,height/4-4);
		
	}

	public int getRed() {
		return r;
	}

	public void setRed(int r) {
		this.r = r;
		repaint();
	}

	public int getGreen() {
		return g;
	}

	public void setGreen(int g) {
		this.g = g;
		repaint();
	}

	public int getBlue() {
		return b;
	}

	public void setBlue(int b) {
		this.b = b;
		repaint();
	}
	
	public int getAlpha() {
		return a;
	}
	
	public void setAlpha(int a) {
		this.a = a;
		repaint();
	}
	
	public static void main(String[] args) {
		SwingUtilities.invokeLater(new Runnable() {
			@Override
			public void run() {
				ColorPanel pnl = new ColorPanel(50,255,120,170);
				JFrame frame = new JFrame("ColorPanel");
				frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
				frame.add(pnl);
				frame.setSize(200,200);
				frame.setLocationByPlatform(true);
				frame.setVisible(true);
			}
		});
	}
}

Vielleicht inspiriert es dich ja Mr.Radar.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
H LayoutManager RPG Programmieren, eigenes Spielfeld grafisch generieren aus Tileset AWT, Swing, JavaFX & SWT 18
Y Objekte grafisch darstellen ohne GMF - Composite auf Canvas? AWT, Swing, JavaFX & SWT 2
H Swing Arbeitsspeicherauslastung anderer Programme grafisch darstellen AWT, Swing, JavaFX & SWT 16
M Array grafisch darstellen AWT, Swing, JavaFX & SWT 9
P Binärbaum grafisch ausgeben AWT, Swing, JavaFX & SWT 4
D Swing Bresenham Linienalgorithmus grafisch darstellen AWT, Swing, JavaFX & SWT 6
H Rechteck grafisch ausgeben (2D) AWT, Swing, JavaFX & SWT 3
F "Objekte" mit "Verbindungen" grafisch darstellen AWT, Swing, JavaFX & SWT 4
G Statistik grafisch ausgeben AWT, Swing, JavaFX & SWT 6
P Netz grafisch darstellen AWT, Swing, JavaFX & SWT 4
L Hintergrundbild im Fenster darstellen AWT, Swing, JavaFX & SWT 9
H JTable im JSplitPane darstellen AWT, Swing, JavaFX & SWT 2
B Text im Tetfeld in einer TableView darstellen AWT, Swing, JavaFX & SWT 20
ralfb1105 JavaFX Exception Message von Model Class via Controller in View darstellen AWT, Swing, JavaFX & SWT 39
olfibits Swing JavaFX-Frame in JDesktopPane darstellen? AWT, Swing, JavaFX & SWT 2
stroggi Swing Mehrere transparentes Objekte (Grafiken) über einem Bild (JLabel) darstellen AWT, Swing, JavaFX & SWT 4
L Swing JTable im Panel darstellen AWT, Swing, JavaFX & SWT 8
G Ampel graphisch darstellen AWT, Swing, JavaFX & SWT 2
T JComponents zur Laufzeit auf JPanel darstellen AWT, Swing, JavaFX & SWT 10
Augenblau JavaFX Wechselnde Werte in Label darstellen AWT, Swing, JavaFX & SWT 7
H Karte mit JXMapKit darstellen AWT, Swing, JavaFX & SWT 0
C (JavaFX 8) SQLite Datenbank in einem TableView darstellen AWT, Swing, JavaFX & SWT 2
M Jtable besser darstellen AWT, Swing, JavaFX & SWT 6
Q Swing Fenster updaten - Hinzugefügte Komponenten darstellen AWT, Swing, JavaFX & SWT 3
J Mehrere Hyperlinks "stilvoll" darstellen. AWT, Swing, JavaFX & SWT 1
C Ventilator Geschwindigkeit darstellen AWT, Swing, JavaFX & SWT 1
A 3D-Grafik 3D Gitter Darstellen AWT, Swing, JavaFX & SWT 1
T Swing Aktuelle Größe eines Textes in einem Label darstellen AWT, Swing, JavaFX & SWT 3
T Kreis in Jlabel darstellen. AWT, Swing, JavaFX & SWT 13
T Swing Elemente der JList überlappend darstellen AWT, Swing, JavaFX & SWT 5
J jTable anders darstellen AWT, Swing, JavaFX & SWT 4
Iron Monkey Nach Drag & Drop die Datei auf Komponent darstellen AWT, Swing, JavaFX & SWT 2
D JOptionPane.QUESTION_MESSAGE Fett darstellen AWT, Swing, JavaFX & SWT 4
B Signal als Diagramm darstellen AWT, Swing, JavaFX & SWT 6
B 3D-Grafik Punkt in JAVA3D darstellen AWT, Swing, JavaFX & SWT 2
M In JField eine Kommazahl darstellen java.lang.NumberFormatException AWT, Swing, JavaFX & SWT 4
M Swing XML Datei in JTable darstellen + verändern AWT, Swing, JavaFX & SWT 3
X Icons in einer Spalte darstellen AWT, Swing, JavaFX & SWT 6
C Text in einer Seitenansicht darstellen AWT, Swing, JavaFX & SWT 3
M 2x JComponent in einem JFrame darstellen? AWT, Swing, JavaFX & SWT 7
Y Word Dokument im JPanel darstellen AWT, Swing, JavaFX & SWT 5
T Zeichen/char in Bild umwandeln und darstellen AWT, Swing, JavaFX & SWT 10
Zettelkasten Swing anklickbaren Link darstellen AWT, Swing, JavaFX & SWT 2
D Texte zeichenweise übereinander darstellen, gemeinsam umbrechen AWT, Swing, JavaFX & SWT 5
L Rollkurven (zykloide) darstellen AWT, Swing, JavaFX & SWT 13
D Zwei String Attribute über eine Methode als Zeilen in einer Tabelle darstellen AWT, Swing, JavaFX & SWT 9
J 3D-Grafik JOGL - Verschiedene Perspektiven darstellen AWT, Swing, JavaFX & SWT 5
destroflyer Swing UTF-8 in JEditorPane darstellen AWT, Swing, JavaFX & SWT 5
A SWT: Daten in Raster mit Gitternetzlinien darstellen AWT, Swing, JavaFX & SWT 7
C JTable: Mehrere Farben in einer Zelle darstellen AWT, Swing, JavaFX & SWT 10
X Swing JList -> Daten anders darstellen als im Model hinterlegt -> möglich ? AWT, Swing, JavaFX & SWT 9
S Animation korrekt darstellen AWT, Swing, JavaFX & SWT 8
T JFrame als JInternalFrame darstellen AWT, Swing, JavaFX & SWT 2
R Wie in GUI System.out's darstellen AWT, Swing, JavaFX & SWT 8
prakdi grafisches Darstellen von einer Parabel?![JAVA] AWT, Swing, JavaFX & SWT 2
M Bilder in einem Textfeld darstellen AWT, Swing, JavaFX & SWT 2
C Swing JComboBox - Problem bei Darstellen von ImageIcon AWT, Swing, JavaFX & SWT 4
M Java-Quellcode im Paanel mit Syntax-highlightning darstellen? AWT, Swing, JavaFX & SWT 2
T Choice "gezielt" darstellen aber wie - mit Koordinaten aber wie? AWT, Swing, JavaFX & SWT 6
F Einfaches Fenster "ordentlich" darstellen AWT, Swing, JavaFX & SWT 8
J Konsolentabelle darstellen AWT, Swing, JavaFX & SWT 7
S Swing JTable: in erster Spalte Image darstellen AWT, Swing, JavaFX & SWT 30
Antoras Swing Umfangreiche formatierte Texte in Fenster darstellen AWT, Swing, JavaFX & SWT 2
R MousePosition über mehrere JPanels darstellen AWT, Swing, JavaFX & SWT 13
M Darstellen eines Bildes AWT, Swing, JavaFX & SWT 3
D java.lang.IllegalArgumentException beim Darstellen eines Panels AWT, Swing, JavaFX & SWT 7
S Datum in Tabelle darstellen? AWT, Swing, JavaFX & SWT 4
R JTable: Tabelle neu darstellen AWT, Swing, JavaFX & SWT 6
R JTable darstellen von leeren Zellen AWT, Swing, JavaFX & SWT 12
R JTable Darstellen der selektierten Zelle braucht lange AWT, Swing, JavaFX & SWT 7
S Mathematische Förmeln darstellen AWT, Swing, JavaFX & SWT 5
J JComboBox geöffnet darstellen AWT, Swing, JavaFX & SWT 5
R Daten in JTable in mehreren Zeilen darstellen AWT, Swing, JavaFX & SWT 11
1 Laden einer Datei zur Echtzeit Darstellen AWT, Swing, JavaFX & SWT 7
P HTML darstellen mit Java AWT, Swing, JavaFX & SWT 4
G Icon und Text in JTable darstellen AWT, Swing, JavaFX & SWT 3
F Ein JLayerdPane in einem JScrollPane darstellen AWT, Swing, JavaFX & SWT 2
SebSnake Animiertes GIF auf JPG Hintergrund darstellen? AWT, Swing, JavaFX & SWT 3
J .ps Bilder in JavaApplication darstellen AWT, Swing, JavaFX & SWT 4
J Titel im aktive JTabbedPane tab fett darstellen AWT, Swing, JavaFX & SWT 4
O DB-Zugriff + wie darstellen? AWT, Swing, JavaFX & SWT 6
P JScrollPane ohne Komponente in definierter Größe darstellen AWT, Swing, JavaFX & SWT 6
W Selbes Steuerelement auf 2 Fenster darstellen und zeichnen AWT, Swing, JavaFX & SWT 3
K JComboBox in DefaultTableModel darstellen AWT, Swing, JavaFX & SWT 2
T Bilder von Webcam darstellen AWT, Swing, JavaFX & SWT 3
M Windows-Fensterinhalt in Java-Applikation darstellen AWT, Swing, JavaFX & SWT 6
M Applet in JFrame darstellen AWT, Swing, JavaFX & SWT 2
Firefork JPopupMenu unter einem Schalter darstellen AWT, Swing, JavaFX & SWT 2
M JTable text zentriert darstellen AWT, Swing, JavaFX & SWT 5
G TableCellRenderer Background variiert darstellen AWT, Swing, JavaFX & SWT 3
S Text farbig darstellen AWT, Swing, JavaFX & SWT 3
F Frame in Frame darstellen AWT, Swing, JavaFX & SWT 2
S JComponent in JPanel darstellen AWT, Swing, JavaFX & SWT 2
B JFrame Transparent darstellen AWT, Swing, JavaFX & SWT 4
S JDialog durchsichtig darstellen ? AWT, Swing, JavaFX & SWT 2
F kleine Zahlen/buchstaben mit Java darstellen? AWT, Swing, JavaFX & SWT 3
J Große Anzahl von Comboboxen in Tabelle darstellen AWT, Swing, JavaFX & SWT 2
B Vectorinhalt in Tabellenzelle darstellen AWT, Swing, JavaFX & SWT 3
G Knoten im Jtree mit unterscheidlichen Farben darstellen AWT, Swing, JavaFX & SWT 5
$ JTree in JTable darstellen und selectieren AWT, Swing, JavaFX & SWT 13

Ähnliche Java Themen


Oben