» Swing Problem bei SplitPane - Panel mit Graphics und Affine Transform

Java Aufgabe HilfeNeuen Thread eröffnenNeue Antwort erstellenHilfe benötigt BITTE BITTE
AutorNachricht
Beobachter 
Anmeldedatum: 23.11.2019
Beiträge: 3
27.07.2020, 13:11
zitieren

Hallo,

ich benötige mal einen Expertenrat.
Ausgangssituation:
Ich habe mit Swing eine horizontale SplitPane (Horizontale Teilung) erstellt.
auf dem rechten Panel der Splitpane möchte ich Graphic Objecte darstellen.
Beim Ändern der SplitPane sollen die Graphic Komponenten neu gezeichnet werden.
Das funktioniert auch alles tadellos, solange ich keine Affine Transformation auf die Grafickomponenten anwende.

Problemstellung:
Wende ich eine Affine Transpormation an, so werden in der Methode paintComponent
beim Verschieben der SplitPane die Elemente falsch positioniert.
Wie müsste die Lösung aussehen?

Zur Darstellung/Nachvollziehbarkeit des Problems habe ich mal Quick and Dirty ein kurzes Beispiel dargestellt.
Das blaue Rechteck auf der rechten Seite soll BEIM Verschieben der Splitpane sich mit verschieben.

Es geht in der Methode paintComponent
um folgende Zeile: g2.setTransform(afftransfMain);

lasse ich die Zeile ( g2.setTransform(afftransfMain); ) weg, dann funktkioniert alles ABER ich kann die zu zeichnenden Graphic Komponenten nicht skaliert darstellen.
Belasse ich in der Methode die Zeile ( g2.setTransform(afftransfMain); ) dann
werden die Graphic Komponenten falsch dargestellt.

Zur Verdeutlichung des Problems den Code einmal ohne die Zeile
g2.setTransform(afftransfMain); und einmal mit dieser Zeile ausprobieren.

Über einen Hinweis würde ich mich sehr freuen: :yes:

Gruss Hein_nieH





import java.awt.Color;
import java.awt.Dimension;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JSplitPane;

import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Rectangle;
import java.awt.geom.AffineTransform;


public class TestSplitPane
{

public static void main(String[] args)
{
TestSplitPane xxx = new TestSplitPane();
xxx.buildFrame();

}

void buildFrame()
{
JFrame frm =new JFrame();
frm.setTitle("Test JSplitPane");

JPanel pnlLeft = new JPanel();
pnlLeft.setBackground(Color.WHITE);
JPanel pnlRight = new RightPanel().getPanel();

JSplitPane split = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
split.setOneTouchExpandable(true);  //True Trennbalken hat Pfeile
split.setContinuousLayout(true); //True Komponeneten werden fortlaufend gezeichnet
split.setDividerLocation(100);
split.setLeftComponent(pnlLeft);
split.setRightComponent(pnlRight);
frm.add(split);
frm.setSize( new Dimension(300,300) );
frm.setVisible(true);
}//buildFrame

class RightPanel extends JPanel
{
private AffineTransform afftransfMain = new AffineTransform();
//JPanel pnl = new JPanel();
public RightPanel()
{
this.setBackground(Color.LIGHT_GRAY);
}

public JPanel getPanel()
{
return this;
}

public void paintComponent (Graphics g)
{
super.paintComponent(g);
Graphics2D g2= (Graphics2D)g;
g2.setTransform(afftransfMain);//Hier liegt das Problem
g2.setColor(Color.blue);
g2.drawRect(150, 10, 30, 30);
}

}//class RightPanel
}//class TestSplitPane

:wall:


pn
Gast 
27.07.2020, 13:11
zitieren

Mach mit!

Wenn Dir die Beiträge zum Thread "Swing Problem bei SplitPane - Panel mit Graphics und Affine Transform" gefallen haben oder Du noch Fragen hast oder Ergänzungen machen möchtest, solltest Du Dich gleich bei uns anmelden:



Registrierte Mitglieder genießen die folgenden Vorteile:
✔ kostenlose Mitgliedschaft
keine Werbung
✔ direkter Austausch mit Gleichgesinnten
✔ neue Fragen stellen oder Diskussionen starten
✔ schnelle Hilfe bei Problemen
✔ Bilder und Videos hochladen
✔ und vieles mehr...


Neuen Thread eröffnenNeue Antwort erstellen
Ähnliche BeiträgeRe:
Letzter Beitrag
AWT/Swing: Uhr flackert
Hallo, könnt ihr mir sagen, warum diese Uhr nach einiger Zeit beim Aktualisieren "flackert"? Vielen Dank schon mal: import java.awt.BasicStroke; import java.awt.Canvas; import java.awt.Graphics; import java.awt.Graphics2D; import...
[Java]von Tobias0
0
291
21.12.2020, 07:54
Tobias0
Corsa A Swing - Banane 2.0 (ein unendlicher Weg)
Meinen Hotline hab ich euch schon vorgestellt, doch hier möchte ich euch den Grund vorstellen warum ich überhaupt so schrauberbegeistert im Segment Auto bin. Meinen ersten A Corsa, bzw. Auto Nummer 2. (zur Referenz, der blaue EG4 ist Auto Nummer 40 :D...
von Lohse
13
1.477
11.12.2020, 19:38
dealink
Intel HD Graphics 4000 - HDMI - erweiterte Einstellung für benutzerdefinierte Auflösungen
Der neue Intel HD Treiber hat keine erweiterten Einstellungen mehr. Dafür gibt es nun eine extra App. Dazu über Windows - Start nach "custommodeapp"...
von mgutt
2
2.915
13.01.2014, 09:58
mgutt
5 Panel Spiegel
Hat wer von euch einen 5 Panel Spiegel verbaut und kann mir ein Bild schicken wie die Sicht ist...
von 181
4
241
16.07.2014, 09:31
181
Del Sol rear panel fillers
moin moin sagt mal kann mir einer sagen wie gross der abstand zwischen den fillers...
von bs.v-tec
4
399
24.03.2013, 19:22
Need-Sound
EG6 Airbox zum cai umbauen? HKS Panel Filter
Moin also.habe z.zt ne eg6 airbox mit K&N matte in meinem eg3 drin. Ja es geht und bringt schon im vergleich zu oem sowie CAI ne ganze menge in relation gesehn. Nun denke ich aber nach,das ganze noch weiter zu optimieren. Entweder nen pilz unten...
von Team Sound Addiction
1
300
06.04.2010, 19:05
Team Sound Addiction
Brauche INFO zu Kenwood Panel!!!!
Hallo leutz! Habe ein Kenwood KDC-7024, habe aber das dazugehörige Sicherheits Panel (bei Kenwood FP - Mask) verloren. Ich bräuchte dieses Panel, hab auch schon versucht bei mediaMarkt das Panel nachzubestellen, haben das aber nicht...
von CivicBastler
0
521
02.09.2005, 07:43
CivicBastler
climate controle panel swap frage;
servus, habe vor bei meinem RHD EM1 das climate controle panel von nem RHD EK9 zu verbauen, nur jetzt meine FRAGE: Passt das ganze ueberhaupt? von den Steckern her etc? waere cool wenn das jemand weiss und mir auskunft geben kann. gruesse Josh Beispiel...
von Josh_EJ6
15
626
04.02.2013, 14:08
Josh_EJ6
Carbon Air Intake und Carbon Air Panel (Kühlerabdeckung)
Ich möchte mir eine Carbon Air Intake zulegen und habe mich mit der Fa. Impactfactory kurzgeschlossen. Leider haben die derzeit keine mehr im Angebot. Auf Wunsch können die aber jederzeit welche importieren. Ich habe dort auch mal angefragt ob noch...
von Z3011
2
1.661
06.11.2006, 11:07
Z3011
Problem nach ASB-swap ** Problem geklärt vielen Dank für eure Ideen !!!!! :) **
Problem nach ASB-swap :yes: Hallo Jungs, ich brauche dringend eure Hilfe :) Ich habe bei meinem EJ9, Bj 1999 einen ASB Swap mit Z6 ASB gemacht. Problem: Motor ging aus und startet nicht mehr Mods: D14: Drosselklappe ink. aller Sensoren, Einspritzdüsen,...
von Ingo01
60
3.296
07.08.2013, 12:06
Blues
© 2004 - 2025 www.programmierer-forum.de | Communities | Impressum |