JSlider umdrehen

Status
Nicht offen für weitere Antworten.

alias_host

Aktives Mitglied
bein problem ist ansich schon im titel beschrieben. ich möchte ganz einfach, dass der pfeil nicht nach unten, sondern nach oben zeigt.

weiß jemand von euch eine lösung???

Mfg alias_host
 

merlin2

Top Contributor
Das ist doch nicht das, was er wollte, oder?

_______^________

Ich dachte, dieses Aussehen sei gewünscht!
 
G

Gast

Gast
schau mal im metalslider ui. glaub dort gabs ne methode die paintthumb heisst. die einfach umschreiben.
 
G

Gast

Gast
den slider umdrehen, wenn du nur das icon für den knob umdrehen willst?
wtf??
machs wie ich gesagt habe

public class newSliderUI extends MetalSliderUI ...

und dort die public void paintThumb(Graphics g) überschreiben. wenn du den einfach umdrehen willst, dann kannste da einfach schnell den code "drehen".
 

alias_host

Aktives Mitglied
also ich habe bis jetzt noch nie so was gemacht, aber ich habe schon mal folgendes vorbereitet:

Code:
import java.awt.Graphics;
import java.awt.Rectangle;

import javax.swing.Icon;
import javax.swing.JComponent;
import javax.swing.JSlider;
import javax.swing.UIManager;
import javax.swing.plaf.metal.MetalSliderUI;


public class newSliderUI extends MetalSliderUI{
    protected static Icon extraThumbIcon;
	
	public void installUI( JComponent c ) {
    trackWidth = ((Integer)UIManager.get( "Slider.trackWidth" )).intValue();
    tickLength = ((Integer)UIManager.get( "Slider.majorTickLength" )).intValue();
    horizThumbIcon = UIManager.getIcon( "Slider.horizontalThumbIcon" );
    vertThumbIcon = UIManager.getIcon( "Slider.verticalThumbIcon" );
    extraThumbIcon = ??????

super.installUI( c );

    thumbColor = UIManager.getColor("Slider.thumb");
    highlightColor = UIManager.getColor("Slider.highlight");
    darkShadowColor = UIManager.getColor("Slider.darkShadow");

    scrollListener.setScrollByBlock( false );

    Object sliderFillProp = c.getClientProperty( SLIDER_FILL );
    if ( sliderFillProp != null ) {
        filledSlider = ((Boolean)sliderFillProp).booleanValue();
    }
}
	
	public void paintThumb(Graphics g){
        Rectangle knobBounds = thumbRect;

        g.translate( knobBounds.x, knobBounds.y );

        if ( slider.getOrientation() == JSlider.HORIZONTAL ) {
            extraThumbIcon.paintIcon( slider, g, 0, 0 );
        }


        g.translate( -knobBounds.x, -knobBounds.y );
    }

}

jezt muss ich das icon ja nur noch spiegeln oder??? kann mir dabei jemand helfen, und ist das so richtig???
 

alias_host

Aktives Mitglied
und wie mache ich das genau???

also die Methode sieht ursprünglich so aus:
Code:
    public void paintThumb(Graphics g)  {
        Rectangle knobBounds = thumbRect;

        g.translate( knobBounds.x, knobBounds.y );

        if ( slider.getOrientation() == JSlider.HORIZONTAL ) {
            horizThumbIcon.paintIcon( slider, g, 0, 0 );
        }
        else {
            vertThumbIcon.paintIcon( slider, g, 0, 0 );
        }

        g.translate( -knobBounds.x, -knobBounds.y );
    }

und wie binde ich das dann in mein Programm ein???
 

merlin2

Top Contributor
Du legst ein Graphics2D-Objekt an:
Code:
Graphics2D g2d = (Graphics2D) g;
Dann drehst du es:
Code:
g2d.rotate(Math.toRadians(180));
Und zeichnest das Icon.
 

alias_host

Aktives Mitglied
also ich habe jetzt die klasse NewMetalSlider erstellt:

Code:
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Rectangle;

import javax.swing.Icon;
import javax.swing.JComponent;
import javax.swing.JSlider;
import javax.swing.UIManager;
import javax.swing.plaf.metal.MetalSliderUI;


public class NewSliderUI extends MetalSliderUI{
	
	public void paintThumb(Graphics g){
		Graphics2D g2d = (Graphics2D) g;
		g2d.rotate(Math.toRadians(180));
		g = (Graphics) g2d;

        Rectangle knobBounds = thumbRect;

        g.translate( knobBounds.x, knobBounds.y );

        if ( slider.getOrientation() == JSlider.HORIZONTAL ) {
            horizThumbIcon.paintIcon( slider, g, 0, 0 );
        }
        else {
            vertThumbIcon.paintIcon( slider, g, 0, 0 );
        }

        g.translate( -knobBounds.x, -knobBounds.y );
        
	}
    
        

}

nun weiß ich nicht weiter, wie binde ich diese jetzt in meinen code ein??? bzw wie erstelle ich einen JSlider, der die umgeschriebene klasse benutzt???
 
G

Gast

Gast
also den kram speicherste unter NewSliderUI.java

und beim slider machste slider.setUI(new NewSliderUI())
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
E Frage zum Schieberegler JSlider AWT, Swing, JavaFX & SWT 5
T Java: Zwei abhängige JSlider machen nicht das, was sie sollen AWT, Swing, JavaFX & SWT 4
D Swing JSlider Tip Anzahl AWT, Swing, JavaFX & SWT 3
J JSlider sichtbar AWT, Swing, JavaFX & SWT 7
J Swing JSlider - Form des Reglers AWT, Swing, JavaFX & SWT 6
J JSlider Color Ticks AWT, Swing, JavaFX & SWT 1
J JSlider - MajorTick AWT, Swing, JavaFX & SWT 0
Z JSlider im Modalen-Fenster AWT, Swing, JavaFX & SWT 0
A Swing JLabel/JTextField Inhalt mit JSlider verändern AWT, Swing, JavaFX & SWT 12
A Swing 2 JSlider verknüpfen und mit einem JTextField vergleichen, dann Ausgabe AWT, Swing, JavaFX & SWT 5
A Slider (JSlider?) AWT, Swing, JavaFX & SWT 7
D JSlider "laggt" nach überschreiben der paint methode AWT, Swing, JavaFX & SWT 2
A Swing JSlider erscheint doppelt AWT, Swing, JavaFX & SWT 2
K 2D-Grafik Kontrastanpassung über einen JSlider AWT, Swing, JavaFX & SWT 2
A Swing Bestimmte Werte anzeigen JSlider() AWT, Swing, JavaFX & SWT 2
Y Mehrere JSlider verlinken AWT, Swing, JavaFX & SWT 6
M JSlider-Wert ändern, ohne ein ChangeEvent auszulösen AWT, Swing, JavaFX & SWT 4
C Aussehen von JSlider ändern AWT, Swing, JavaFX & SWT 7
D Swing jSlider soll selber weiterwandern, je nach zeit der musik AWT, Swing, JavaFX & SWT 5
D JSlider und Textfeld AWT, Swing, JavaFX & SWT 2
C Swing Tickspacing in JSlider AWT, Swing, JavaFX & SWT 3
C Swing Mehrere JSlider sollen aufeinander reagieren AWT, Swing, JavaFX & SWT 4
Y JSlider Wert auslesen (Kategorien) AWT, Swing, JavaFX & SWT 2
T jSlider-Value als Float in jLabel ausgeben AWT, Swing, JavaFX & SWT 2
O Swing JSlider mit doppelter Value AWT, Swing, JavaFX & SWT 6
F JSlider Design ändern AWT, Swing, JavaFX & SWT 6
D Swing JSlider AWT, Swing, JavaFX & SWT 11
B JSlider - Wert am Mouszeiger anzeigen lassen AWT, Swing, JavaFX & SWT 6
E JSlider synchron halten AWT, Swing, JavaFX & SWT 4
J Swing jSlider nur auf bestimmte werte beschränken AWT, Swing, JavaFX & SWT 15
X Audio Player: Fenster mit Play/Stop-Button erstellen, mit JSlider Lautstärke ändern AWT, Swing, JavaFX & SWT 6
R JSlider AWT, Swing, JavaFX & SWT 9
M Swing JSlider, Popup-Box AWT, Swing, JavaFX & SWT 3
J JSlider mit Double Werten AWT, Swing, JavaFX & SWT 5
J JSlider auf JTextPane? AWT, Swing, JavaFX & SWT 2
M Jslider Beschriftung AWT, Swing, JavaFX & SWT 6
R JLabel und JSlider dynamisch erzeugen? AWT, Swing, JavaFX & SWT 3
E jSlider und ChangeListener AWT, Swing, JavaFX & SWT 2
S JSlider Track Breite und Farbe AWT, Swing, JavaFX & SWT 2
T Swing JSlider und Adjustment-Listener wollen nicht so recht AWT, Swing, JavaFX & SWT 2
O JSlider - wie unterscheide ich mit Maus verändert und durch setValue verändert. AWT, Swing, JavaFX & SWT 16
T JSlider: ChangeListener löst dreimal aus? AWT, Swing, JavaFX & SWT 4
B JSlider in JCombobox AWT, Swing, JavaFX & SWT 9
J JSlider wird nicht neugezeichnet AWT, Swing, JavaFX & SWT 8
J Einen JSlider ähnlich wie in OO3 AWT, Swing, JavaFX & SWT 5
G JSlider in Applet AWT, Swing, JavaFX & SWT 4
K Unterschiedliches Aussehen der JSlider? AWT, Swing, JavaFX & SWT 4
I Listener für einen JSlider AWT, Swing, JavaFX & SWT 1
G beschriftung von JSlider AWT, Swing, JavaFX & SWT 7
H JSlider mit 2 Werten AWT, Swing, JavaFX & SWT 7
L JSlider Beschriftung AWT, Swing, JavaFX & SWT 1
D JSlider und JMF player verbinden AWT, Swing, JavaFX & SWT 6
J JSlider regaiert unter Java 1.6 nicht mehr AWT, Swing, JavaFX & SWT 7
N JSlider: Kosmetik - snapToTicks AWT, Swing, JavaFX & SWT 3
T JComponents abändern/modifizieren z.b. JSlider AWT, Swing, JavaFX & SWT 2
N Nicht linearer JSlider! AWT, Swing, JavaFX & SWT 4
T JSlider getValue() erst nach dem Loslassen des Mauszeigers AWT, Swing, JavaFX & SWT 3
Z JSlider-Knob wenden AWT, Swing, JavaFX & SWT 8
L JSlider stumm geworden? AWT, Swing, JavaFX & SWT 2
I JSlider - klick ignorieren AWT, Swing, JavaFX & SWT 4
I JSlider-Schieberegler AWT, Swing, JavaFX & SWT 7
T JSlider Schiebereglerbild ändern AWT, Swing, JavaFX & SWT 4
U JSlider - Probleme bei der Darstellung AWT, Swing, JavaFX & SWT 3
H ChangeListener für JSlider AWT, Swing, JavaFX & SWT 6
P JSlider automatisch bewegen AWT, Swing, JavaFX & SWT 3
G JSlider AWT, Swing, JavaFX & SWT 2
M Synchronisierte Liste umdrehen AWT, Swing, JavaFX & SWT 1
C Memory Karten nach Paar offen bleiben sonst wieder umdrehen AWT, Swing, JavaFX & SWT 1
M Rechteck "umdrehen"/über die Kante drehen AWT, Swing, JavaFX & SWT 4
I String lowercase, uppercase und umdrehen AWT, Swing, JavaFX & SWT 3
G JSpinner umdrehen? AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben