|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Nov 2000
Città: Salerno
Messaggi: 4338
|
JAVA Help!
Salve raga
premesso che non toccavo java da circa un anno In pratica dovrebbe comparirmi una nuova finestra, e non la stessa con i nuovi campi... Scusate se non mi sono espresso bene ma mi è venuto un terribile mal di testa Codice:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.util.*;
import java.lang.*;
public class AddressBook extends JFrame
{
private JPanel labelPanel;
private JPanel label2Panel;
private JPanel inputOutputPanel;
private JPanel displayPanel;
private JPanel display2Panel;
private JPanel buttonPanel;
private JPanel button2Panel;
private JPanel backPanel;
private JPanel back2Panel;
private JTextField nomeInput;
private JTextField cognomeInput;
private JTextField addressInput;
private JTextField patenteInput;
private JTextField luogoInput;
private JTextField nazioneInput;
private JTextField annoInput;
private JButton prenotaButton;
private JButton prelevaButton;
private JButton estendiButton;
private JButton aggButton;
private JButton consegnaButton;
private String s1, s2, s3, s4, s5, s6, s7;
public AddressBook()
{
super ("Scegliere il campo");
displayPanel = new JPanel();
displayPanel.setLayout(new BorderLayout());
prenotaButton = new JButton("Prenota");
buttonPanel = new JPanel();
buttonPanel.add(prenotaButton);
consegnaButton = new JButton("Consegna");
buttonPanel.add(consegnaButton);
prelevaButton = new JButton("Preleva");
buttonPanel.add(prelevaButton);
estendiButton = new JButton("Estendi");
buttonPanel.add(estendiButton);
aggButton = new JButton("Aggiorna");
buttonPanel.add(aggButton);
backPanel = new JPanel();
backPanel.setLayout(new BorderLayout());
backPanel.add(displayPanel,BorderLayout.CENTER);
backPanel.add(buttonPanel,BorderLayout.NORTH);
getContentPane().add(backPanel);
prenotaButton.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
prenota();
}
}
);
prelevaButton.addActionListener(new ActionListener ()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}
);
aggButton.addActionListener(new ActionListener ()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}
);
estendiButton.addActionListener(new ActionListener ()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}
);
consegnaButton.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}
);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}
);
pack();
setResizable(false);
setVisible(true);
setSize(500,250);
show();
}
public void prenota()
{
display2Panel = new JPanel();
display2Panel.setLayout(new BorderLayout());
label2Panel = new JPanel();
label2Panel.setLayout(new GridLayout (7,1));
label2Panel.add(new JLabel ("Nome: "));
label2Panel.add(new JLabel ("Cognome: "));
label2Panel.add(new JLabel ("Indirizzo: "));
label2Panel.add(new JLabel ("N. patente: "));
label2Panel.add(new JLabel ("Anno di nascita: "));
label2Panel.add(new JLabel ("Nazionalità: "));
label2Panel.add(new JLabel ("Luogo di nascita: "));
inputOutputPanel = new JPanel();
inputOutputPanel.setLayout(new GridLayout (7,1));
nomeInput = new JTextField (20);
inputOutputPanel.add(nomeInput);
cognomeInput = new JTextField (20);
inputOutputPanel.add(cognomeInput);
addressInput = new JTextField (20);
inputOutputPanel.add(addressInput);
patenteInput = new JTextField (20);
inputOutputPanel.add(patenteInput);
annoInput = new JTextField (4);
inputOutputPanel.add(annoInput);
nazioneInput = new JTextField (20);
inputOutputPanel.add(nazioneInput);
luogoInput = new JTextField (20);
inputOutputPanel.add(luogoInput);
display2Panel = new JPanel();
display2Panel.setLayout(new BorderLayout());
display2Panel.add(label2Panel,BorderLayout.WEST);
display2Panel.add(inputOutputPanel,BorderLayout.CENTER);
prenotaButton = new JButton("Ok");
button2Panel = new JPanel();
button2Panel.add(prenotaButton);
consegnaButton = new JButton("Find");
button2Panel.add(consegnaButton);
back2Panel = new JPanel();
back2Panel.setLayout(new BorderLayout());
back2Panel.add(display2Panel,BorderLayout.CENTER);
back2Panel.add(button2Panel,BorderLayout.SOUTH);
getContentPane().add(back2Panel);
prenotaButton.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}
);
consegnaButton.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}
);
show();
}
public static void main(String[] args)
{
AddressBook addressbook = new AddressBook();
AddressBook prenota = new AddressBook();
}}
__________________
Doc : "Ovviamente, il continuum temporale è stato interrotto creando questa nuova temporale sequenza di eventi risultante in questa realtà alternativa" Marty : ...
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
nel main istanzi due AddressBook, a me compaiono subito due finestre
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
hai provato a chiamare una getContentPane().removeAll(); prima di fare la add del backPanel2?
|
|
|
|
|
|
#4 |
|
Bannato
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
|
kingv ti ha offerto la soluzione.
Per il resto...se a te è venuto il mal di testa, Swing è finito dritto in rianimazione. Speriamo che se la cavi Ciao. |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Nov 2000
Città: Salerno
Messaggi: 4338
|
Quote:
Ehm, ne approfitto per chiedere una cosa un pò più particolare Questo non l'ho mai fatto, quindi è lungi dal mal di testa che mi sta assillando Thanks ancora
__________________
Doc : "Ovviamente, il continuum temporale è stato interrotto creando questa nuova temporale sequenza di eventi risultante in questa realtà alternativa" Marty : ...
|
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
Quote:
mettere un'immagine come sfondo secondo me non si puo' fare ma non sono esperto di Swing |
|
|
|
|
|
|
#7 |
|
Bannato
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
|
Faccio un esempio super-kitsch
Codice:
import java.awt.*;
import java.awt.image.*;
import javax.swing.*;
import java.io.*;
public class SampleApp1 {
public static void main(String[] args) {
FlowLayout iPaneLayout = new FlowLayout(FlowLayout.LEFT);
Image image = new ImageIcon("unreal.png").getImage();
CustomComponent imagePanel = new CustomComponent(image);
imagePanel.setLayout(iPaneLayout);
JButton pulsante1 = new JButton("press me!");
pulsante1.setForeground(Color.WHITE);
pulsante1.setContentAreaFilled(false);
imagePanel.add(pulsante1, 0);
JButton pulsante2 = new JButton("press me!");
imagePanel.add(pulsante2, 1);
final JFrame frame = new JFrame("SampleApp1");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setContentPane(imagePanel);
frame.pack();
frame.setResizable(false);
SwingUtilities.invokeLater(new Runnable() {
public void run() {
frame.setVisible(true);
}
});
}
private static class CustomComponent extends JComponent {
private Image image;
private CustomComponent(Image image) {
super();
this.image = image;
setPreferredSize(new Dimension(
image.getWidth(null), image.getHeight(null)));
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawImage(image, 0, 0, null);
}
}
}
Di alcuni componenti puoi controllare la trasparenza (nel codice c'è un JButton trasparente ed uno opaco), altri, di solito più complessi, possono richiedere qualche manipolazione (ad esempio una JComboBox o un JTextPane). Ciao. Ultima modifica di PGI : 15-07-2004 alle 12:36. |
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
Quote:
appunto era meglio aspettare un esperto di swing. [OT] cos'e' quello schifo
|
|
|
|
|
|
|
#9 |
|
Bannato
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
|
Dai è fichissimo
E' uno dei modelli usati per le dimostrazioni dellUnreal engine 3 (mi pare sia il 3...insomma, non quello di adesso, il prossimo) |
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Nov 2000
Città: Salerno
Messaggi: 4338
|
Quote:
![]() Cannot resolve symbol What is?
__________________
Doc : "Ovviamente, il continuum temporale è stato interrotto creando questa nuova temporale sequenza di eventi risultante in questa realtà alternativa" Marty : ...
|
|
|
|
|
|
|
#11 |
|
Bannato
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
|
Può essere un errore di battitura, dipende da quello che ti dice il messaggio dopo.
|
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
Codice:
CustomComponent imagePanel = new CustomComponent(image); ma e' roba Sun questa? |
|
|
|
|
|
#13 |
|
Bannato
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
|
No, è roba mia (10 linee, caspita che paternità
Codice:
private static class CustomComponent extends JComponent {
|
|
|
|
|
|
#14 | |
|
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
Quote:
sono accecato, scusa
|
|
|
|
|
|
|
#15 |
|
Senior Member
Iscritto dal: Nov 2000
Città: Salerno
Messaggi: 4338
|
PGI hai PVT
__________________
Doc : "Ovviamente, il continuum temporale è stato interrotto creando questa nuova temporale sequenza di eventi risultante in questa realtà alternativa" Marty : ...
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:07.




















