Hardware Upgrade Forum

Hardware Upgrade Forum (https://www.hwupgrade.it/forum/index.php)
-   Corsi, Tutorial e FAQ (https://www.hwupgrade.it/forum/forumdisplay.php?f=56)
-   -   [Tutorial Java] Guida Rapida a Swing (https://www.hwupgrade.it/forum/showthread.php?t=2005654)


PGI-Bis 25-06-2009 01:04

[Tutorial Java] Guida Rapida a Swing
 
Mettere qualcuno che non l'abbia mai visto nelle condizioni di scrivere GUI con Swing. Fin qui nulla di impegnativo e allora facciamolo in 50 pagine .

Swing Espresso

Naturalmente mancano un paio di cosette: non sono babbei quelli che lo fanno in mille-duemila pagine. Il fatto è che sorbirsi una decina di kili di carta per "provare l'effetto che fa" non è il massimo.

Tra le cose che non ci sono contiamo tre layout manager (SpringLayout, GroupLayout e GridBagLayout) che se accennati non fanno nulla di diverso da quelli più brevi e se approfonditi richiedono più pagine dell'intero tutorial proposto.

Lo stesso potremmo dire per JTable, JTree e JTextPane ma questi ci sono: questi hanno quei quattro o cinque metodi che coprono una vasta gamma di usi e sono brevissimi più un altro centinaio che coprono il dieci percento di utilità e divertimento ognuno dei quali sarebbe in grado di far sforare da solo il limite imposto.

In ogni caso l'obiettivo del tutorial per quanto possa dirsi breve è quello di far scrivere interfacce grafiche a finestra con Swing. Se alla fine della lettura non ci riuscite allora il tutorial non va bene.

Graditissimi commenti, segnalazioni suggerimenti. Quasi obbligatori. Accorcia qui, allunga là, qui c'è un refuso, qua hai detto una cazzata. Attendo con ansia.

29 giu 2009

Aggiornato il pdf con le correzioni gentilmente segnalate da banryu79.

banryu79 25-06-2009 10:22

Scaricato! :mano:

Certo che il pdf l'hai fatto con tutti i crismi (ovvero ci sono i segnalibri, encomialbile :)).
Appena lo leggo posto un feedback.

Ah, grazie anche per questo contributo: i tuoi tutorial che ho letto in passato mi sono stati molto utili per riorganizzare conoscenze già acquisite e colmare lacune, grazie alla chiarezza espressiva e organizzativa dei testi.
Inoltre si fanno leggere molto volentieri.

wingman87 25-06-2009 11:21

Grazie PGI, lo leggerò appena finiti gli esami.

fero86 25-06-2009 15:30

se solo avessi avuto questa guida 3 anni fa...
grazie mille PGI-Bis :)

javacomelava 25-06-2009 15:50

chiedevo una cosa del genere da un pò qui sol forum.La leggerò con molta attenzione.Grazie!

franksisca 25-06-2009 16:22

:ave: :ave: :ave: :ave: che dire

banryu79 29-06-2009 09:57

Letto tutto: ottima guida per cominciare, c'è tutto quello che serve per partire a scrivere interfacce grafiche Swing senza strapparsi i capelli perchè in esecuzione l'interfaccia sembra lenta e poco responsive, o peggio, non va proprio.
Caldamente consigliata, ottima sintesi delle basi.

A gusto personale mi sarebbe piaciuto vedere almeno un esempio di utilizzo di uno SwingWorker, che so, per esempio per il caricamento di un file pesante con visualizzazione di una progress bar durante il processo di loading e apertura automatica di una text area con il file caricato al termine dell'operazione.
Ma capisco che va oltre lo scopo del tutorial.

malocchio 04-08-2009 17:03

Anch'io sto leggendo questo tutorial, davvero utile (lo farò leggere anche alla prof...)!!

Solo una cosa: non ho mai sentito il congiuntivo del verbo "dovere" coniugato come "io deva"... è italiano corretto ma io ho sentito sempre e solo la forma "debba". Quindi ogni volta che la trovo all'interno faccio una faccia così :mbe:

:D Ciao

Giovanni Tavella 26-07-2010 17:44

Wow
 
PGI-Bis questa guida è utilissima, se avessi una casa editrice pubblicherei questa guida :) .

Grazie

Khanattila 27-01-2011 09:47

Sto facendo un Applet e questa parte di codice mi crea un'altra classe, il che è tecnicamente corretto.
Il problema è che me la rinomina, un volta compilata, in nomeclasse$1.class e molti siti web non riconoscono il carattere $, quindi l'applet diventa ingestibile :mad:

Quote:

esegui.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
eseguiMouseClicked(evt);
}
});
Come faccio a definire il nome della classe? :mc:

Khanattila 27-01-2011 15:19

Quote:

Originariamente inviato da Khanattila (Messaggio 34296866)
Sto facendo un Applet e questa parte di codice mi crea un'altra classe, il che è tecnicamente corretto.
Il problema è che me la rinomina, un volta compilata, in nomeclasse$1.class e molti siti web non riconoscono il carattere $, quindi l'applet diventa ingestibile :mad:



Come faccio a definire il nome della classe? :mc:

Come non detto, ho risolto :)

Explode18 19-03-2011 10:57

Sto scaricando :) speriamo bene

Blackskull182 03-04-2012 11:38

Grazie mille

malocchio 03-04-2012 11:44

Meno male che mi sono iscritto a questa discussione :doh:

fireb86 01-06-2012 13:11

Appena scaricata, grazie mille!

gsa390 24-10-2012 08:18

Grazie mille mi serviva!

Cicciolinuks 23-06-2013 16:59

GRAZIE
 
Scrivo più per ringraziarti che per altro. Questa discussione è vecchia ma tremendamente attuale.

Lascio un paio di cosette, ma per non fare la figura del pignolo: non le considero importanti, tuttavia se fai una riedizione o vuoi fare un'altra guida simile su un altro argomento, puoi pensarci su.

Procediamo:
Farebbero comodo i numeri di pagina per ricordarsi "a che punto sono rimasto ieri"; magari in basso a centro per facilitare la stampa fronte-retro (e suggerendo questo tipo di stampa a chi proprio vuole stampare, per risparmiare carta).

E' -> È (non è importante, ma basta una trova e sostituisci tenendo conto delle maiuscole... praticamente gratis :) e fa la sua porca figura)

Le classi col main si chiamano Main (almeno fin dove sono arrivato io), essendo pubbliche questo non aiuta chi come me ha creato un pacchetto in un progetto Eclipse dove mette ad uno ad uno i file di esempio, che dovrebbero avere lo stesso nome... Un'idea potrebbe essere: Main1, Main2... Mi rendo conto della noia e fastidio di fare una cosa del genere, e ti capisco se la ignori.

Particolari qua e là:

pag. 10: c'è un esempio in cui un metodo si chiama start(); ciò crea confusione con la start di un thread (tra l'altro c'è anche il metodo Thread.start() nello stesso esempio).
Sarebbe consigliabile un nome diverso, ed in generale evitare nomi come start, run...

pag. 13:
Codice:

        private JPanel contentPane = new JPanel(new BorderLayout());
perché contentPane e non contentPanel? La metto perché non ho mai capito la differenza tra oggetti pane e panel, e questi nomi scambiati mi confondono ancora di più (a proposito, se qualcuno volesse chiarirmi la differenza tra pane e panel...)

pag. 14: "le classi finestrelle di messaggio" -> "le classiche ..."

-----
Grazie ancora e scusa le chiacchiere :) Perdona noi "comuni mortali" che cerchiamo il pelo nell'uovo... non vuole essere affatto una critica e me la sono tenuta per un po' prima di decidermi a scrivere...

In ogni caso mi è di grande aiuto, quindi mi unisco a qualcuno sopra:
:ave: :ave: :ave: :ave:

style49 05-02-2014 11:17

Ti ringrazio per la guida.
Ho studiato bene all'università questo Framework ma devo dire che se avessi avuto queste dispense prima, molto probabilmente ci avrei messo la metà del tempo per passare l'esame.
Adesso userò i tuoi sforzi per fare un refresh e riprendere un po' l'argomento.

michelexeno 10-09-2014 18:47

Grazie mille per la guida!!

cest31 13-02-2015 14:35

In primis grazie tante per la guida,, veloce e semplice, per chi non deve fare niente di complesso è ottima..
Anche se un po vecchio ti segnalo delle cose che fanno storcere il naso (almeno a me), incotrate fino ad adesso:
Le pagine non numerate,
a pag 33 nel codice d'esempio hai utilizzato un layout che non hai spiegato.


Tutti gli orari sono GMT +1. Ora sono le: 14:27.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Hardware Upgrade S.r.l.