Ciao a tutti!
Per un progetto di Java che devo consegnare mi manca solo l'interfaccia grafica ma non avendone mai fatte ho provato a farne una semplice, senza il codice del progetto sotto solo per vedere come procedere...praticamente avrei bisogno di una label 'Messaggio:' con un TextField e sotto un bottone invia...sulla label e sul bottone non ho problemi ma la TextField non si vede e non ne capisco il motivo!
Potreste darmi una mano?!
Vi metto il codice, per quanto banale, di questa interfaccia grafica...
import java.util.*;
import java.io.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Finestra{
public void Grafica()
{
final String messaggio = "";
final JTextField invioMessField;
BorderLayout layout = new BorderLayout();
//creazione finestra per interfaccia grafica
JFrame finestra = new JFrame("Starter");
finestra.setLocation(100, 100);
finestra.setSize(400, 300);
finestra.setVisible(true);
finestra.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//JPanel panel = new JPanel();
finestra.setLayout(layout);
JLabel invioMessLabel;
invioMessLabel = new JLabel();
invioMessLabel.setHorizontalAlignment(SwingConstants.LEFT);
invioMessLabel.setForeground(new Color(0,0,255));
invioMessLabel.setText("Messaggio:");
finestra.add(invioMessLabel, BorderLayout.CENTER);
JButton invia;
invia = new JButton("Invia");
invia.addMouseListener(new MouseListener() {
public void mouseReleased(MouseEvent e)
{
System.out.println("Released!!\n");
}
public void mousePressed(MouseEvent e)
{
System.out.println("Pressed!!\n");
}
public void mouseExited(MouseEvent e)
{
System.out.println("Exited!!\n");
}
public void mouseEntered(MouseEvent e)
{
System.out.println("Entered!!\n");
}
public void mouseClicked(MouseEvent e)
{
System.out.println("Inviaaaa!!\n");
}
});
finestra.add(invia, BorderLayout.SOUTH);
invioMessField = new JTextField(1);
invioMessField.setForeground(new Color(0,0,255));
invioMessField.setSelectedTextColor(new Color(0,0,255));
invioMessField.setToolTipText("Messaggio da inviare");
invioMessField.setText("Messaggio");
invioMessField.setColumns(100);
invioMessField.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//messaggio = invioMessField.getText();
System.out.println(invioMessField.getText()+"\n");
}
});
finestra.add(invioMessField, BorderLayout.CENTER);
}
public static void main(String[] argv)
{
Finestra prova = new Finestra();
prova.Grafica();
}
}
Ho tolto il panel e ho aggiunto gli elementi direttamente alla finestra perchè altrimenti se usavo il panel non vedevo nemmeno label e bottone...