Perché Swing è preferito rispetto ad AWT?
Quale componente Swing potrebbe essere usato per riprodurre un video su di esso?
Perché Swing è preferito rispetto ad AWT?
Quale componente Swing potrebbe essere usato per riprodurre un video su di esso?
AWT è più vecchio di Swing e supporta solo un insieme limitato di componenti. Altrimenti devi scrivere il tuo come ad esempio tabelle / griglie dati (tipicamente, dovrai scrivere il tuo video player, buona fortuna!). Swing è più "moderno" in quanto gli ingegneri Sun hanno imparato dai loro errori AWT e hanno fatto qualcosa di meglio, anche se più complesso. Sia Swing che AWT sono basati su eventi, quindi se conosci la programmazione basata sugli eventi sarai a casa. La curva di apprendimento è un po 'più accentuata con Swing a causa del maggior numero di classi disponibili, anche se praticando un po' con i tutorial si dovrebbe andare rapidamente bene.
Dai un'occhiata a questa presentazione IBM su SWT, Swing & AWT , è davvero una buona lettura. Anche AWT vs Swing .
Per sapere come riprodurre video su Java: link
I componenti AWT sono essenzialmente uno strato sottile sopra i controlli della GUI del sistema operativo nativo. Per disegnare ad esempio una casella di controllo, i componenti AWT stavano chiamando il SO sottostante. Tale approccio ha causato due problemi:
A causa di questa connessione tra il componente AWT e il controllo OS sottostante, i controlli AWT sono stati definiti "heavyweight". Al contrario, Swing offre i cosiddetti controlli "leggeri". Sono puramente Java, non hanno alcuna dipendenza dal sistema operativo sottostante e sostanzialmente "disegnano se stessi" usando le primitive Java2D (pixel, linee, pennelli e così via). Questo approccio ha diversi vantaggi, ma ciò che è più importante - risolve i problemi in sospeso AWT sopra menzionati.
Per quanto riguarda il componente Swing per la riproduzione di video, non penso che ce ne sia uno, almeno tra i componenti Swing standard. Puoi volere google per uno, perché probabilmente è già stato scritto. Puoi anche consultare API JMF , ma penso che tu possa devi codificare alcuni bit prima di poter visualizzare il video.
1) AWT è preistorico FrameWork ed è basato sul sistema operativo Windows
2) Swing è GUI FrameWork basato su AWT, tutto JComponent eredita o implemetna parte di metodi utili da componenti ATW, sicuro se esiste,
3) Swing implementa alcuni nuovi JComponent, ad esempio JTable, meglio dalla tabella di confronto qui
4) per video e multimedia ci sono molte API personalizzate, (mai usato) ma penso che sia basato su AWT Canvas
5) poiché a partire dall'aggiornamento JDK 6 12 e JDK7 build 19 versioni , prometti che puoi combinare componenti AWT e Swing, ma non ti suggerisco di farlo, i componenti sono pittore nel contenitore correttamente, ma esiste ancora la stessa differenza tra componenti pesanti e leggeri come prima, e devi calcolare con quello