Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile
Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile
Lenovo ha lanciato il ThinkTab X11 rimettendo piede nel segmento dei tablet Android con il marchio Think dopo oltre un decennio di assenza. Il risultato è un dispositivo che prende una direzione precisa: massima dotazione funzionale, costruzione resistente, autonomia fuori dagli schemi
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot
AMD Advancing AI è l'appuntamento annuale con il quale l'azienda americana mostra quelle che sono le proprie novità dal versante datacenter. Tra piattaforma Helios, GPU Instinct MI455X e processori EPYC di sesta generazione tutto quello che serve per processare l'IA sempre più complessa ed esigente
Tascabile e con Android: BOOX Go 6 Gen II è diverso da tutti gli altri e-reader
Tascabile e con Android: BOOX Go 6 Gen II è diverso da tutti gli altri e-reader
BOOX Go 6 Gen II porta per la prima volta il supporto allo stilo su un e-reader da 6 pollici, affiancando 3 GB di RAM al collaudato Snapdragon 665 e un design rivisto con scocca posteriore a costolature. Su carta la proposta è interessante, ma Android 11 fuori supporto, l'assenza di un alloggiamento per il pennino e un'autonomia ridotta rispetto agli e-reader tradizionali sono i compromessi da accettare
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 02-07-2011, 10:35   #1
zuckjy
Junior Member
 
Iscritto dal: Jul 2011
Messaggi: 1
Gui per esame AIUTO!!!

salve ho creato una gui che gestisce una lista attraverso un listIterator, ma quando a faccio partire mi fa fare soltanto una operazione e dopo non risponde più ai comandi... non riesco a trovare il problema potete aiutarmi? posto qui il codice:

package util;

import javax.swing.*;

import java.awt.*;
import java.awt.event.*;

@SuppressWarnings("serial")
public class ListaGUI extends JFrame {

private JMenuItem esci, nuovo, addFirst, addLast, removeFirst, removeLast,
firstElem, lastElem, vistaElem, sort, about;
private String titolo="Lista GUI";
private String impl=" Lista ";
private Lista<String> lista=new ListaConcatenata<String>();
private String elemento;
private boolean elementoOk;

public ListaGUI(){ //costruttore
setTitle("ListaGui");
setLocation(200,200);
setSize(600,400);
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
if(consensoUscita()) System.exit(0);
}
});

AscoltatoreEventiAzione listener=new AscoltatoreEventiAzione();

//creazione barra dei menù
JMenuBar menuBar=new JMenuBar();
this.setJMenuBar(menuBar);

//creazione file menù
JMenu fileMenu=new JMenu("File");
menuBar.add(fileMenu);

//creazione voci del menu File
nuovo=new JMenuItem("Nuovo");
nuovo.addActionListener(listener);
fileMenu.add(nuovo);
esci=new JMenuItem("Esci");
esci.addActionListener(listener);
fileMenu.add(esci);

//creazione strumenti menù
JMenu struMenu=new JMenu("Strumenti");
menuBar.add(struMenu);

//creazione voci menu Strumenti
JMenu tipoAdd=new JMenu("Aggiungi");
struMenu.add(tipoAdd);
addFirst=new JMenuItem("Primo");
addFirst.addActionListener(listener);
tipoAdd.add(addFirst);
addLast=new JMenuItem("Ultimo");
addLast.addActionListener(listener);
tipoAdd.add(addLast);
JMenu tipoRem=new JMenu("Rimuovi");
struMenu.add(tipoRem);
removeFirst=new JMenuItem("Primo");
removeFirst.addActionListener(listener);
tipoRem.add(removeFirst);
removeLast=new JMenuItem("Ultimo");
removeLast.addActionListener(listener);
tipoRem.add(removeLast);

firstElem=new JMenuItem("Primo elemento");
firstElem.addActionListener(listener);
struMenu.add(firstElem);
lastElem=new JMenuItem("Ultimo elemento");
lastElem.addActionListener(listener);
struMenu.add(lastElem);
vistaElem=new JMenuItem("Vedi lista");
vistaElem.addActionListener(listener);
struMenu.add(vistaElem);
sort=new JMenuItem("Ordina lista");
sort.addActionListener(listener);
struMenu.add(sort);

//creazione menu Aiuto
JMenu helpMenu=new JMenu("Aiuto");
menuBar.add(helpMenu);
about=new JMenuItem("About Lista");
about.addActionListener(listener);
helpMenu.add(about);
menuIniziale();

//pack();

}//costruttore

private void menuIniziale() {
addFirst.setEnabled(true);
addLast.setEnabled(true);
removeFirst.setEnabled(true);
removeLast.setEnabled(true);
firstElem.setEnabled(false);
lastElem.setEnabled(false);
vistaElem.setEnabled(true);
}//menuiniziale

private boolean consensoUscita() {
int option=JOptionPane.showConfirmDialog(
null, "Sei sicuro di vole uscire?", "Uscita",
JOptionPane.YES_NO_OPTION);
return option==JOptionPane.YES_OPTION;
}//consensoUscita

private class FrameAF extends JFrame implements ActionListener{
private JTextField elemento;
private JButton ok;

public FrameAF(){
setTitle("Aggiunta elemento iniziale");
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
addWindowListener( new WindowAdapter() {
public void windowClosing(WindowEvent e){
if( verificaUscita() ){
lista.addFirst(ListaGUI.this.elemento);
}
elemento.setText("");
elementoOk=false;
FrameAF.this.setVisible(false);
}
}//windoeClosing
);
elementoOk=false;
JPanel p=new JPanel();
p.setLayout( new FlowLayout() );
p.add( new JLabel("Elemento", JLabel.RIGHT) );
p.add( elemento=new JTextField("",12) );
p.add( ok=new JButton("OK") );
add(p);
elemento.addActionListener(this);
ok.addActionListener(this);

setLocation(250,340);
setSize(400,150);
}//costruttore

@Override
public void actionPerformed(ActionEvent e) {
if( e.getSource()==elemento ){
ListaGUI.this.elemento=elemento.getText();
ListaGUI.this.elementoOk=true;
}
else if( e.getSource()==ok ){
if( verificaUscita() ){
lista.addFirst(ListaGUI.this.elemento);
this.setVisible(false);
elementoOk=false;
elemento.setText("");
}
}
}//actionPerformer

private boolean verificaUscita(){
return elementoOk;
}//verificaUscita

}//FrameAF

private class FrameAL extends JFrame implements ActionListener{
private JTextField elemento;
private JButton ok;

public FrameAL(){
setTitle("Aggiunta elemento finale");
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
addWindowListener( new WindowAdapter() {
public void windowClosing(WindowEvent e){
if( verificaUscita() ){
lista.addLast(ListaGUI.this.elemento);
}
elemento.setText("");
elementoOk=false;
FrameAL.this.setVisible(false);
}
}//windoeClosing
);
elementoOk=false;
JPanel p=new JPanel();
p.setLayout( new FlowLayout() );
p.add( new JLabel("Elemento", JLabel.RIGHT) );
p.add( elemento=new JTextField("",12) );
p.add( ok=new JButton("OK") );
add(p);
elemento.addActionListener(this);
ok.addActionListener(this);

setLocation(250,340);
setSize(400,150);
}//costruttore

@Override
public void actionPerformed(ActionEvent e) {
if( e.getSource()==elemento ){
ListaGUI.this.elemento=elemento.getText();
ListaGUI.this.elementoOk=true;
}
else if( e.getSource()==ok ){
if( verificaUscita() ){
lista.addLast(ListaGUI.this.elemento);
this.setVisible(false);
elementoOk=false;
elemento.setText("");
}
}
}//actionPerformer

private boolean verificaUscita(){
return elementoOk;
}//verificaUscita

}//FrameAL

private class FrameRF extends JFrame{

@SuppressWarnings("unused")
private JTextArea area;
public FrameRF(){
setTitle("Elenco Nominativi");
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
JPanel p=new JPanel();
p.setLayout( new FlowLayout() );
JTextArea area=new JTextArea(10, 25);
area.setEditable(false);
JScrollPane sp=new JScrollPane( area );
p.add( sp );
add(p);
if( lista.size()!=0 )
area.append( (String) lista.removeFirst() );
else
area.append("Lista vuota!");
setLocation(250,340);
setSize(400,150);
}//costruttore

}//FrameRF

private class FrameRL extends JFrame{

@SuppressWarnings("unused")
private JTextArea area;
public FrameRL(){
setTitle("Elenco Nominativi");
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
JPanel p=new JPanel();
p.setLayout( new FlowLayout() );
JTextArea area=new JTextArea(10, 25);
area.setEditable(false);
JScrollPane sp=new JScrollPane( area );
p.add( sp );
add(p);
if( lista.size()!=0 )
area.append( (String) lista.removeLast() );
else
area.append("Lista vuota!");
setLocation(250,340);
setSize(400,150);
}//costruttore

}//FrameRL

private class FrameFE extends JFrame{

@SuppressWarnings("unused")
private JTextArea area;
public FrameFE(){
setTitle("Elenco Nominativi");
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
JPanel p=new JPanel();
p.setLayout( new FlowLayout() );
JTextArea area=new JTextArea(10, 25);
area.setEditable(false);
JScrollPane sp=new JScrollPane( area );
p.add( sp );
add(p);
if( lista.size()!=0 )
area.append( (String) lista.getFirst() );
else
area.append("Lista vuota!");
setLocation(250,340);
setSize(400,150);
}//costruttore

}//FrameFE

private class FrameLE extends JFrame{

@SuppressWarnings("unused")
private JTextArea area;
public FrameLE(){
setTitle("Elenco Nominativi");
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
JPanel p=new JPanel();
p.setLayout( new FlowLayout() );
JTextArea area=new JTextArea(10, 25);
area.setEditable(false);
JScrollPane sp=new JScrollPane( area );
p.add( sp );
add(p);
if( lista.size()!=0 )
area.append( (String) lista.getLast() );
else
area.append("Lista vuota!");
setLocation(250,340);
setSize(400,150);
}//costruttore

}//FrameLE

private class FrameNE extends JFrame{

@SuppressWarnings("unused")
private JTextArea area;
public FrameNE(){
setTitle("Elenco Nominativi");
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
JPanel p=new JPanel();
p.setLayout( new FlowLayout() ); //ridondante
JTextArea area=new JTextArea(10, 25);
area.setEditable(false);
JScrollPane sp=new JScrollPane( area );
p.add( sp );
add(p);
area.append( lista.toString() );
setLocation(250,340);
setSize(400,150);
}//costruttore

}//FrameNE

private class AscoltatoreEventiAzione implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
if( e.getSource()==esci ){
if( consensoUscita() ) System.exit(0);
}
else if( e.getSource()==addFirst ){
impl = " Aggiungi Primo ";
ListaGUI.this.setTitle(titolo+impl);
FrameAF frameAF=new FrameAF();
frameAF.setVisible(true);
}
else if( e.getSource()==addLast ){
impl = " Aggiungi Ultimo ";
ListaGUI.this.setTitle(titolo+impl);
FrameAL frameAL=new FrameAL();
frameAL.setVisible(true);
}
else if( e.getSource()==removeFirst ){
impl = " Rimuovi Primo ";
ListaGUI.this.setTitle(titolo+impl);
FrameRF frameRF=new FrameRF();
frameRF.setVisible(true);
}
else if( e.getSource()==removeLast ){
impl = " Rimuovi Ultimo ";
ListaGUI.this.setTitle(titolo+impl);
FrameRL frameRL=new FrameRL();
frameRL.setVisible(true);
}
else if( e.getSource()==firstElem ){
impl = " Primo Elemento ";
ListaGUI.this.setTitle(titolo+impl);
FrameFE frameFE=new FrameFE();
frameFE.setVisible(true);
}
else if( e.getSource()==lastElem ){
impl = " Ultimo Elemento ";
ListaGUI.this.setTitle(titolo+impl);
FrameLE frameLE=new FrameLE();
frameLE.setVisible(true);
}
else if( e.getSource()==vistaElem ){
impl = " Numero Elemento ";
ListaGUI.this.setTitle(titolo+impl);
FrameNE frameNE=new FrameNE();
frameNE.setVisible(true);
}
else if( e.getSource()==nuovo ){
lista.clear();
}
}//actionPerformer

}//AsoltatoreEventiAzione

public static void main( String []args ){
ListaGUI l=new ListaGUI();
l.setVisible(true);
}//main

}//class ListaGUI
zuckjy è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile Il tablet rugged leggero e sottile: Lenovo Think...
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot AMD Advancing AI 2026: l'hardware AMD per le ela...
Tascabile e con Android: BOOX Go 6 Gen II è diverso da tutti gli altri e-reader Tascabile e con Android: BOOX Go 6 Gen II &egrav...
Recensione Lenovo Idea Tab Plus: il tablet da 12 pollici che costa meno di 300 euro Recensione Lenovo Idea Tab Plus: il tablet da 12...
Oltre il contante e le crypto: tutto sull'Euro Digitale e la nuova sovranità monetaria europea Oltre il contante e le crypto: tutto sull'Euro D...
Batterie a terra per Varta, bancarotta v...
Elon Musk: l'intelligenza artificiale su...
Ryzen 7 9800HX3D: il miglior processore ...
Google porta Gemini Live sui vecchissimi...
Corsair Platform:4 in offerta: la scriva...
Il creatore di Disagea sull'addio dei gi...
Fastweb + Vodafone entra nello SmartCity...
AI Act europeo: dal 2 agosto partono i n...
Da 1,3 a 10 miliardi in due mesi: chi è ...
Schede video RTX: NVIDIA comunica nuovi ...
GTA 6, i 60 fps stabili potrebbero esser...
Questa Smart TV QLED da 40 pollici con H...
Ring in sconto fino al 57%: videocitofon...
Pubblicità su Windows con i monit...
Azioni sul PC e coding solo chiedendo: O...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


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


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v