2013-04-23 6 views
6

Sto riscontrando qualche problema nella creazione di un'applicazione GWT.GWT può gestire Java Swing?

Qui: https://developers.google.com/web-toolkit/tools/gwtdesigner/features/menu_editing Google stesso parla della possibilità di Java Swing, implementazione JFrame nel GWT. Sono un principiante di Java e non so quale sia l'equivalente SWT di Swing, quindi non ho provato questa opzione.

Quando si tenta di eseguire il mio codice (che è costruito dal Designer GWT) ottengo errori a ogni riga che utilizza JFrame:

JFrame frame = new JFrame(); 

     JMenuBar menuBar = new JMenuBar(); 
     frame.setJMenuBar(menuBar); 

     JMenu mnNewMenu = new JMenu("Test"); 
     menuBar.add(mnNewMenu); 

     JMenu mnNewMenu_1 = new JMenu("Test"); 
     mnNewMenu.add(mnNewMenu_1); 

Tornando: [ERRORE] [gwtearthdemo] - Linea 96: No il codice sorgente è disponibile per il tipo javax.swing.JFrame; hai dimenticato di ereditare un modulo richiesto?

Idem per JMenuBar, JMenu.

Ho visto errori simili a questo con risposte che suggeriscono che la funzione in questione non è applicabile a GWT. Tuttavia, Google suggerisce che lo è. Qualche consiglio qui?

+1

L'articolo [citato] (https://developers.google.com/web-toolkit/tools/gwtdesigner/features/menu_editing) mostra come il progettista consente scegli i widget _comparabili_ per quelli trovati in Swing o SWT. – trashgod

risposta

8

In GWT è possibile utilizzare solo alcune delle classi java poiché non è possibile convertire tutte le classi java in javascript. È possibile trovare un elenco delle classi consentite in questo collegamento: List of Classes

+0

Quindi non capisco il collegamento nella mia domanda originale. Perché lo pubblicizzano? –

+0

Come sviluppatore principale di gwt, ho meno esperienza con il designer, hai aggiunto il codice sorgente di swt e swing al percorso di costruzione e provato con i barattoli ?? –

+0

Pensavo che lo swing fosse standard? Non so come aggiungerlo al percorso di build se non lo è già. Designer crea solo righe di codice per me, quindi ha prodotto ciò che è sopra. –