Portal > Foren > Java > Allgemeine Java-Programmierung > Button hat Standard-L&F wenn er außerhalb von Methoden deklariert wird
Antwort
 
Themen-Optionen Thema durchsuchen
Alt 16.02.2006, 17:58 Nach oben    #1
Corvin Gröning
 
Benutzerbild von Corvin
 
Registriert seit: 19.03.2005
Ort: S-H | Flensburg
Beiträge: 459
Standard Button hat Standard-L&F wenn er außerhalb von Methoden deklariert wird

Guten Abend.

Ich habe folgenden Code:
java Code:
  1. package javaapplication1;
  2.  
  3. import javax.swing.*;
  4. import java.awt.event.*;
  5. import java.awt.Component;
  6.  
  7. public class MyClass extends JFrame {
  8.    
  9.     //button
  10.    
  11.    
  12.     public MyClass() {
  13.         // blub... gui baun
  14.         super("Button Test");
  15.         this.setLookAndFeel();
  16.         setBounds(400, 400, 200, 200);
  17.         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  18.        
  19.         // panel anglegen
  20.         JPanel pane = new JPanel();
  21.         setContentPane(pane);
  22.        
  23.         // button hinzufügen
  24.         JButton btn = new JButton("Mein toller Button");
  25.         pane.add(btn);
  26.        
  27.         setVisible(true);
  28.     }
  29.    
  30.     // L&f ändern auf das Betriebssystem eigene l&f
  31.     protected void setLookAndFeel() {
  32.         try {
  33.             UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
  34.         } catch (Exception e) {
  35.             //.. nischts machen, dann bleibt halt das alte laf
  36.         }
  37.     }
  38.    
  39.     public static void main(String args[]) {
  40.         MyClass mc = new MyClass();
  41.     }
  42.    
  43. }

Mit der Methode setLookAndFeel() stelle ich das Betriebssystem-eigene Look&Feel ein.
Klappt auch wunderbar so, nur wenn ich den Button (btn) ausserhalb der Methoden erstelle, hat er das Swing-L&F (ist ja auch klar dass das so ist).
Was kann ich nun machen, damit der Button auch das Betriebssystem-eigene Look&Feel hat?
__________________
Corvin ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.02.2006, 18:04 Nach oben    #2
Martin Breuer
 
Benutzerbild von WarrenFaith
 
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.653
Standard

SwingUtilities.updateComponentTreeUI(this);
sollte helfen (auch heut erst gelernt)
__________________
I did it my way - Senseless-Blog
WarrenFaith ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.02.2006, 18:23 Nach oben    #3
Corvin Gröning
 
Benutzerbild von Corvin
 
Registriert seit: 19.03.2005
Ort: S-H | Flensburg
Beiträge: 459
Standard

Hmm.. und wo genau soll das hin?
__________________
Corvin ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.02.2006, 19:08 Nach oben    #4
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.129
Standard

Gar nicht... du änderst das LookAndFeel ja nicht direkt zur Laufzeit.

Pack vor diese Zeile hier:
Code:
MyClass mc = new MyClass();
Noch
Code:
setLookAndFeel();
Und mach die Methode static.
pago ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.02.2006, 19:23 Nach oben    #5
Corvin Gröning
 
Benutzerbild von Corvin
 
Registriert seit: 19.03.2005
Ort: S-H | Flensburg
Beiträge: 459
Standard

Ahh.. das funktioniert. Vielen Dank für die Hilfe. =)
__________________
Corvin ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 17.02.2006, 10:05 Nach oben    #6
Martin Breuer
 
Benutzerbild von WarrenFaith
 
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.653
Standard

java Code:
  1. // L&f ändern auf das Betriebssystem eigene l&f
  2. protected void setLookAndFeel() {
  3.    try {
  4.       UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
  5.       SwingUtilities.updateComponentTreeUI(this);
  6.    } catch (Exception e) {
  7.       //.. nischts machen, dann bleibt halt das alte laf
  8.    }
  9. }
so hätte ich es gelöst.
__________________
I did it my way - Senseless-Blog
WarrenFaith ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 17.02.2006, 10:44 Nach oben    #7
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.129
Standard

Geht zwar auch, aber warum die Mühe? Kostet doch nur unnötig Rechenzeit.
pago ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 17.02.2006, 11:19 Nach oben    #8
Martin Breuer
 
Benutzerbild von WarrenFaith
 
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.653
Standard

ich bin doch nurn anfänger was weiß ich schon über rechenzeit?
__________________
I did it my way - Senseless-Blog
WarrenFaith ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 17.02.2006, 12:09 Nach oben    #9
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.129
Standard

Ist ja kein Thema. *tätschel*
Bin doch extra dafür da, um auf solche Sachen aufmerksam zu machen.
pago ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 17.02.2006, 13:57 Nach oben    #10
Erfahrener Benutzer
 
Benutzerbild von karahead
 
Registriert seit: 23.11.2005
Ort: Stadtallendorf
Beiträge: 139
Standard

PHP-Code:
SwingUtilities.updateComponentTreeUI(this); 
Diese Methode ist nur dafür da um das LookAndFeel zu aktualisieren, falls du das LookAndFeel zu Laufzeit änderst.

Achja, wie kann ich die Java Tags setzten ?
[java][/java]???
Danke
__________________
Die Menschen wünschen sich Unsterblichkeit, aber wissen nichts anzufangen an einem verregneten Sonntag Nachmittag.
karahead ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 17.02.2006, 14:10 Nach oben    #11
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.512
Standard

[highlight=Java.][/highlight.] .. allerdings kann man das so schlecht rauskopieren
Ist der GeSHi-Highlighter.
Ben ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 17.02.2006, 14:55 Nach oben    #12
Corvin Gröning
 
Benutzerbild von Corvin
 
Registriert seit: 19.03.2005
Ort: S-H | Flensburg
Beiträge: 459
Standard

Änder das doch mal bitte im Template..
__________________

Geändert von Corvin (28.04.2008 um 22:14 Uhr)
Corvin ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
PingBacks sind an
RefBacks sind aus


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:34 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45