2011-08-12 11 views
8

im kodowanie programu za pomocą windowbuilder w eclipse. Chciałbym pomóc w zmianie wyglądu (wyglądu i dotyku) z metalu na okna. Jak mógłbym to zrobić? dziękujęZaćmienie Java WindowBuilder, zmień wygląd i odczuj

+0

http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/index.html – mKorbel

+0

@mKorbel z jakiegoś powodu link nie pokazuje prawidłowego artykułu –

Odpowiedz

2

To nie ma nic wspólnego z WindowBuilder.

Proszę przeczytać poradnik Swing na Swing wyglądać i czuć się na http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

+2

W rzeczywistości tak jest, chociaż nie sądzę, że pytanie to wyjaśniło wystarczająco. Pasek narzędzi WindowBuilder ma menu rozwijane, które pozwala zmieniać wygląd i sposób działania, ale nie modyfikuje on źródła tak, jak większość innych poleceń paska narzędzi, tylko podgląd. Powyższa odpowiedź Mohammada naprawia to zachowanie. – The111

3

rozmowy Swing jest:

try { 
    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); 
} catch(Exception e) { 
    System.out.println("Error setting native LAF: " + e); 
} 

wspominam w SWT listew okiennych zmieni naturalnie kiedy cykl poprzez tematów Ponieważ widżetów są faktycznie rodzime dla os. używasz Swinga lub SWT?

18

W Eclipse iść do

Okno> Preferencje> WindowBuilder> Swing> LookAndFeel

i kleszczy

Zastosuj wybrany poniżej LookAndFeel w głównej metody().

W ten sposób za każdym razem, gdy zmienisz wygląd i styl w widoku projektu WindowBuilder, zostanie on zastosowany w kodzie.

+0

@ The111 Nie ma za co :) –

2

Próbowałem ustawić, aby program WIndow Builder używał wyglądu systemu w preferencjach, ale nadal nie działał, ale rozwiązanie Simgineer'a. Dodałbym do postu Simgineera konkretne miejsce do dodania kodu, a także znaczniki, których powinieneś użyć, aby ukryć kod z parsera Konstruktora okien. W Tobie głównego okna aplikacji ...

public static void main(String[] args) {     
    // hide>>$ 
    try { 
     UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); 
    } catch(Exception e) { 
     System.out.println("Error setting native LAF: " + e); 
    } 
    // $hide<<$ 

    EventQueue.invokeLater(new Runnable() { 
     public void run() { 
      // generated code ... 
     } 
    }); 
} 

Cheers

0
try { 
      for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { 
       if ("Windows".equals(info.getName())) { 
        javax.swing.UIManager.setLookAndFeel(info.getClassName()); 
        break; 
       } 
      } 
     } catch (ClassNotFoundException ex) { 
      java.util.logging.Logger.getLogger(BiatApp.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
     } catch (InstantiationException ex) { 
      java.util.logging.Logger.getLogger(BiatApp.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
     } catch (IllegalAccessException ex) { 
      java.util.logging.Logger.getLogger(BiatApp.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
     } catch (javax.swing.UnsupportedLookAndFeelException ex) { 
      java.util.logging.Logger.getLogger(BiatApp.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
     } 
+0

Witamy w Stackoverflow. Poprzyj odpowiedź z kilkoma wyjaśnieniami. – Daenarys

Powiązane problemy