Anderes Look'n'Feel = JTextArea doppelt so gross!

Status
Nicht offen für weitere Antworten.

Spontex

Mitglied
Hallo,

ich habe folgendes Problem mit den <ironie> ach so tollen Look'n'Feels </irnoie> Mein Anwndung soll primär mit dem SystemLookandFeel auf Windoof und Linux laufen wenn das nicht geht oder der Benutzer es wünscht sollte zum CrossPlatformLookandFeel gewechselt werden.
Alles ja kein Problem aber wenn ich z.B. und Windows vom SystemLookandFeel auf das CrossPlatformLookandFeel wechsel sind die JTextFields und JTextAreas plötzlich alle viel grösser als von mir angegeben.

Beispiel:

Ich erstelle eine JTextArea mit 5 Rows und 70 Colums ->
Code:
JTextArea eineTextArea = new JTextArea(5, 70);

Mit dem WindowsLookAndFeel passen dort auch brav 70 Zeichen pro Zeile rein - mit dem CrossPlattfromLookandFeel wird die JTextArea aber viel grösser und es passen ca. 120 Zeichen in eine Zeile. An dem Layoutmanager kann es nicht liegen da ich ihn so eingestellt habe das die Komponenten nicht mitwachsen - wobei in einigen fällen die JTextArea sogar grösser wird als das Fenster breit ist und ich muss erst noch das Fenster aufziehen um die vollen Pracht des Schwachsinns sehen zu können.

Ist das jetzt eine Fehler von mir - ein Bug im Look'n'Feel - oder vielleicht doch so gewollt??


Werde wohl alles auf .setPreferredSize() umstellen müssen - wenn sich keine andere Lösung ergibt - um die grösse in Pixeln fest vorzugeben. Dann sind die Komponenten nämlich immer schön gleich gross, egal welches Look'n'Feel verwendet wird.

Morgendliche Grüsse
Spontex
 

thE_29

Top Contributor
Vielleicht setzt das Look And Feel ja auch die Schriftart um??

Spiel mich net soviel mit den LnF´s aber ich weiß das sie manchmal ziemlich buggig sind!
 

Spontex

Mitglied
thE_29 hat gesagt.:
Vielleicht setzt das Look And Feel ja auch die Schriftart um??

Spiel mich net soviel mit den LnF´s aber ich weiß das sie manchmal ziemlich buggig sind!

Ja tut es - und natürlich sollte die grösse dadurch minimal andes sein aber es sollten nicht mehr Zeichen als angegeben reinpassen und somit auch die grösse nicht so extrem verändert werden....
 
B

Beni

Gast
Solch ein Verhalten hab ich noch nie gesehen, da müsste der LayoutManager einspringen und das verhindern.
Kannst du mal mehr Code zeigen? (Lauffähige Demo wäre natürlich super :-D )
 

Spontex

Mitglied
So ich habe mal eine kleine Demo gebastelt (nachdem ich 99/100 rausgelöscht habe ;)) das ganze ist hier zu finden http://nitro.teamler.de/Lnf.zip am besten startet ihr es zweimal, einmal mit WHICH_UI in CAppStart auf false und true und vergleich mal das Ergebnis....

Danke für die Hilfe
Spontex
 

thE_29

Top Contributor
Achja, benennen deine Klassen net mit einem C

Das kommt von C++ und da ist das auch nur weil die Programmiersprache C ist (J würde besser passen :))

Also net alles von irgendwo übernehmen ;)
 

Spontex

Mitglied
thE_29 hat gesagt.:
Achja, benennen deine Klassen net mit einem C

Das kommt von C++ und da ist das auch nur weil die Programmiersprache C ist (J würde besser passen :))

Also net alles von irgendwo übernehmen ;)

Naja eher C = Class und I = Interface, nach deiner Logik müssten Interfaces in Java ebenfalls mit einem J beginnen ;)

Aber egal - hast du es mal ausprobiert? Bei mir sind die TextAreas nahezu doppelt so gross und die TextFields etwas grösser beim verwenden des CrossPlatformLookanFeels!
 

thE_29

Top Contributor
Oha, na gut so kann man es auch sehen ;)

Ich bennen meine Interfaces, hinten halt mit Interface :D


Beim Conversion Types ist es größer, jop!

Aber das ist deswegen größer, weil es sich ans Layout anpasst (spricht die Breite vom Dialog).

Aber der Application Types, ist komplett hin, da hat alles ne größe von 1 pixel (breite)


Desweiteren sind die Componenten viel weiter links ^^


Bild: http://members.inode.at/j.taschek/bild.jpg
 
G

Guest

Gast
thE_29 hat gesagt.:
Oha, na gut so kann man es auch sehen ;)

Ich bennen meine Interfaces, hinten halt mit Interface :D


Beim Conversion Types ist es größer, jop!

Aber das ist deswegen größer, weil es sich ans Layout anpasst (spricht die Breite vom Dialog).

Aber der Application Types, ist komplett hin, da hat alles ne größe von 1 pixel (breite)


Desweiteren sind die Componenten viel weiter links ^^


Bild: http://members.inode.at/j.taschek/bild.jpg

Mmmhh aber unter Layout anpassen fällt beim meinem Verständnis nicht das plötzlich knapp doppelt so viele Zeichen wie angegeben reinpassen.

Und bei Application Types wird die JTextArea grösser als das Formular an platz hergibt, du musst als den Frame nur etwas vergrösser, ist ja resizeable.
 
B

Beni

Gast
Ich verstehe das so: das GridBagLayout versucht die Componenten anhand ihrere preferredSize auszurichten. Sollten die Componenten zuviel Platz benötigen, so wird die minimalSize benutzt.
Die preferredSize verändert sich aber beim Neusetzen eines LookAndFeels (es sind nur wenige Pixel).

Das Problem tritt bereits nicht mehr auf, wenn man im CGridBagPanel bei der Methode addComponent hinschreibt:
Code:
		GridBagConstraints gbc = new GridBagConstraints(
			iGridx, iGridy,
			iGridwidth, iGridheight,
			//iWeightx, iWeigthy,
			1.0, 1.0,   // << anders
			iAlign,
			GridBagConstraints.BOTH,  // << anders
			m_Insets,
			0,
			0);
Mit anderen Worten: du musst das GridBagLayout anders konfigurieren. Ich würde dir empfehlen, dem m_panel kein BorderLayout zu verpassen, sondern ebenfalls ein GridBagLayout. Dann kann das andere Panel auch kleiner als das Frame sein, und die Oberfläche wird nicht so verzogen.
 

Spontex

Mitglied
Mhh netter Ansatz aber irgendwie bringt mich das leider nicht weiter, denn:

Wenn ich die GridBagConstraints = GridBagConstraints.NONE setzte erhalte ich das selbe Ergebnis wie vorher - sprich alles ist grösser (ein paar pixel würden ja keinen stören)
Setzte ich nun die GridBagConstraints = GridBagConstraints.BOTH dann sieht die Oberfläsche immer sehr "geschreddert" aus - da sich die Komponenten ja immer soviel platz schnappen wie maximal verfügbar ist.
 

TRunKX

Bekanntes Mitglied
Look and Feel ist für ##### Standart ist das beste. Alles andere kannste inne Tonne kloppen gibt nur Probleme mit der #####!


edited by thE_29: net in diesem Ton!
 

TRunKX

Bekanntes Mitglied
sky80 hat gesagt.:
TRunKX hat gesagt.:
Look and Feel ist für Waschlappen Standart ist das beste. Alles andere kannste inne Tonne kloppen gibt nur Probleme mit der scheisse!

:meld: Jedem das seine, ok?


ok ok ..... Aber wenn man es mal nüchtern betraxhtet ist LaF jawohl eher hinderlich asl hilfreich ... vor allem wenn man mit mehreren verschiedenen arbeiten will!


btw: sorry!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Swing: Look and Feel abändern oder für Teilkomponenten anderes LaF setzen AWT, Swing, JavaFX & SWT 2
W Anderes Look And Feel AWT, Swing, JavaFX & SWT 9
I Anderes (schlechteres) Font-Rendering in OpenJDK 8 AWT, Swing, JavaFX & SWT 21
G FX warten bis ein anderes GUI Element ausgewählt wurde AWT, Swing, JavaFX & SWT 8
H Beim JFrame erstellen ein anderes schließen AWT, Swing, JavaFX & SWT 0
A Methode pausieren bis anderes Ereignis ausgeführt AWT, Swing, JavaFX & SWT 2
P Variable einer Eingabe in anderes Textfeld schreiben AWT, Swing, JavaFX & SWT 7
L JavaFX CSS in ein anderes CSS importieren AWT, Swing, JavaFX & SWT 2
Thallius Wer oder was bestimmt welches Frame toFront kommt wenn ein anderes geschlossen wird? AWT, Swing, JavaFX & SWT 8
Ghostman1711 GUI Java von Klasse mit Application Windows anderes Application Window aufrufen AWT, Swing, JavaFX & SWT 6
B Swing WindowBuilde: Menu -> anderes Panel wechseln AWT, Swing, JavaFX & SWT 1
D Von JPanel auf anderes JPanel zugreifen AWT, Swing, JavaFX & SWT 9
L Image in anderes kopieren AWT, Swing, JavaFX & SWT 0
D 2D-Grafik Inhalt eines Graphics in anderes Graphics zeichnen.... AWT, Swing, JavaFX & SWT 3
O Swing-MVC: JFrame verstecken und anderes anzeigen AWT, Swing, JavaFX & SWT 10
J 2D-Grafik Bildteile in ein anderes Bild speichern AWT, Swing, JavaFX & SWT 12
J Fenster schließt anderes Fenster AWT, Swing, JavaFX & SWT 4
C AWT Fokus von Component entfernen, wenn kein anderes vorhanden AWT, Swing, JavaFX & SWT 4
E Fenster schließen und ein anderes öffnen AWT, Swing, JavaFX & SWT 9
Luk10 BufferedImage auf ein anderes BufferedImage zeichnen AWT, Swing, JavaFX & SWT 6
T Swing JFrame blockieren während anderes JFrame offen ist AWT, Swing, JavaFX & SWT 2
J 2D-Grafik Graphics2D object in ein anderes Zeichnen AWT, Swing, JavaFX & SWT 7
P Swing Wie bekomme ich eine Referenz auf ein Objekt das im EDT erzeugt wird? Und anderes... AWT, Swing, JavaFX & SWT 8
R Swing Auf ein anderes jFrame zugreifen? AWT, Swing, JavaFX & SWT 5
Semox Swing JFrame extern erzeugen und in anderes JFrame einbetten AWT, Swing, JavaFX & SWT 7
H anderes font in textarea AWT, Swing, JavaFX & SWT 2
hdi Swing setComponentZOrder() oder doch was anderes? AWT, Swing, JavaFX & SWT 7
U Frame öffnet anderes Frame: Methode auslagern AWT, Swing, JavaFX & SWT 26
H Nulllayout in ein anderes Layout AWT, Swing, JavaFX & SWT 5
G JTable oder anderes? AWT, Swing, JavaFX & SWT 6
J Im JLabel Bild durch anderes ersetzen, ohne dass es 'blinkt' AWT, Swing, JavaFX & SWT 12
S Vorhandene Datei in anderes Verzeichnis schreiben! AWT, Swing, JavaFX & SWT 8
S Wie anzeigen? Jtree oder was anderes? AWT, Swing, JavaFX & SWT 3
C ApplicationWindow Shell minimieren (Anderes Event ausführen) AWT, Swing, JavaFX & SWT 4
D Widget/Control während Laufzeit durch ein anderes ersetzen AWT, Swing, JavaFX & SWT 3
F Datenübergabe von einem JFrame auf ein anderes AWT, Swing, JavaFX & SWT 2
G Listbox, combobox oder was anderes? [swing] AWT, Swing, JavaFX & SWT 4
M Panel durch ein anderes Panel ersetzen AWT, Swing, JavaFX & SWT 4
S AWT: Panel durch anderes Panel ersetzen. Neuzeichnen-Problem AWT, Swing, JavaFX & SWT 4
F DRINGEND! Bild in ein anderes Bild einbinden. AWT, Swing, JavaFX & SWT 9
T Anderes Panel nach Button-Klick laden AWT, Swing, JavaFX & SWT 9
Hatsi09 Look and Feel AWT, Swing, JavaFX & SWT 6
MaxG. Swing Java Look and Feel AWT, Swing, JavaFX & SWT 2
Neumi5694 LookAndFeel Look & Feel nicht angezeigter Komponenten ändern AWT, Swing, JavaFX & SWT 6
M JFileChooser Look and Feel AWT, Swing, JavaFX & SWT 2
M JTabbedPane verändern mit Nimbus Look and Feel AWT, Swing, JavaFX & SWT 1
A Swing JProgressbar im Windows Look & Feel Farbanpassung AWT, Swing, JavaFX & SWT 2
G LookAndFeel Tutorial für Erstellung eines eigenen Look And Feel AWT, Swing, JavaFX & SWT 3
javampir Look&Feel von JMenuItem AWT, Swing, JavaFX & SWT 3
V Nimbus Look and Feel register Region problem AWT, Swing, JavaFX & SWT 5
J Eigenes Gui/ Look and Feel AWT, Swing, JavaFX & SWT 14
S Look und Feel ändert sich nicht AWT, Swing, JavaFX & SWT 4
B Eigenen Look&Feel erstellen?! AWT, Swing, JavaFX & SWT 2
V Nimbus Look And Feel Button textForeground AWT, Swing, JavaFX & SWT 8
T Applet JTattoo Look and Feel AWT, Swing, JavaFX & SWT 5
C Swing JTattoo - Look and Feel für ALLE User AWT, Swing, JavaFX & SWT 5
N Nimbus Look & Feel AWT, Swing, JavaFX & SWT 4
B Windows Look and Feel AWT, Swing, JavaFX & SWT 2
eLogic Look And Feel - Einstellen AWT, Swing, JavaFX & SWT 3
B Look And Feel ändern (Netbeans) AWT, Swing, JavaFX & SWT 18
V Swing Nimbus Look And Feel verschiedene Buttons AWT, Swing, JavaFX & SWT 8
B LookAndFeel Cell Renderer für JTable bei Nimbus Look and Feel AWT, Swing, JavaFX & SWT 2
K LookAndFeel Look And Feel ändert sich nicht AWT, Swing, JavaFX & SWT 8
Dragonfire Swing UTF-8 BOB Probleme mit Windows Look and Feel AWT, Swing, JavaFX & SWT 4
I LookAndFeel Wie kann ich das Look and Feel "Blue Vista" verwenden? AWT, Swing, JavaFX & SWT 4
trash Look and Feel Probleme AWT, Swing, JavaFX & SWT 10
Developer_X LookAndFeel Eigenes Look And Feel erstellen AWT, Swing, JavaFX & SWT 33
J Auf die im Look and Feel eingestellten Farben zugreifen AWT, Swing, JavaFX & SWT 2
T LookAndFeel Look and Feel Frage AWT, Swing, JavaFX & SWT 2
W Look and Feel für einzelnde JFrames AWT, Swing, JavaFX & SWT 4
B Look and Feel Designer für GUI AWT, Swing, JavaFX & SWT 2
aze JXTaskPane Look and Feel ändern AWT, Swing, JavaFX & SWT 2
S LookAndFeel Look and Feel mit Windows funktioniert nicht AWT, Swing, JavaFX & SWT 8
E Look & Feel - Nimbus AWT, Swing, JavaFX & SWT 12
M JProgressBar Look and Feel AWT, Swing, JavaFX & SWT 5
K Look&Feel von JMenuBar und Subkomponenten anpassen AWT, Swing, JavaFX & SWT 6
data89 Nimbus Look and Feel als gepackte JAR-Datei AWT, Swing, JavaFX & SWT 3
G Look And Feel in Eclipse AWT, Swing, JavaFX & SWT 2
J Java Look And Feel- Welche gefallen euch am besten? AWT, Swing, JavaFX & SWT 12
T Look & Feel Skins/Themes AWT, Swing, JavaFX & SWT 9
R JScrollBar mit eigenem look and feel AWT, Swing, JavaFX & SWT 6
M Problem Nimbus Look&Feel AWT, Swing, JavaFX & SWT 2
P JTable: nicht im gewünschten Look&Feel AWT, Swing, JavaFX & SWT 3
C JTextArea und Look&Feel AWT, Swing, JavaFX & SWT 14
G windows look and feel problem AWT, Swing, JavaFX & SWT 7
M JTable Zeilenhöhe Look and Feel AWT, Swing, JavaFX & SWT 2
H Look & Feel und JSplitPane Problem AWT, Swing, JavaFX & SWT 17
A Was ist Look and Feel und wie wirds bearbeitet AWT, Swing, JavaFX & SWT 7
G bestes Look & Feel ? AWT, Swing, JavaFX & SWT 15
G Look&Feel AWT, Swing, JavaFX & SWT 5
V Swing: System-Look&Feel unter KDE AWT, Swing, JavaFX & SWT 3
F Externes Look & Feel für Swing wie importieren/verwenden AWT, Swing, JavaFX & SWT 3
J Lookand Feel JGoodies <-> MetalLookAndFeel AWT, Swing, JavaFX & SWT 2
P Swing mit substance look/feel fenster repaint AWT, Swing, JavaFX & SWT 7
S Unterschiedliche Optik trotz gleicher Look and Feel Code? AWT, Swing, JavaFX & SWT 11
S Oyoaha Look and Feel AWT, Swing, JavaFX & SWT 4
S LOOK and FEEL fü MAC AWT, Swing, JavaFX & SWT 11
X Metal Look and Feel in schwarz AWT, Swing, JavaFX & SWT 3
B Allgemeine Frage zu Look&Feel AWT, Swing, JavaFX & SWT 2
Bernasconi Look and Feel Problem AWT, Swing, JavaFX & SWT 6

Ähnliche Java Themen

Neue Themen


Oben