NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

di il
23 risposte

NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

Import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.EventQueue;
import java.sql.Date;
import java.text.DateFormat;
import java.util.Locale;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.JFormattedTextField;
import javax.swing.JTabbedPane;

public class A1 extends JFrame {

private JPanel contentPane;

/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
A1 frame = new A1();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}

/**
* Create the frame
* .
*/
public A1() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);

JButton btnNewButton = new JButton("New button");
btnNewButton.setBounds(140, 96, 114, 25);
contentPane.add(btnNewButton);

JFormattedTextField formattedTextField = new JFormattedTextField();
formattedTextField.setBounds(88, 44, 148, 25);
contentPane.add(formattedTextField);


JTabbedPane data = new JTabbedPane(JTabbedPane.TOP);
data.setBounds(140, 188, 105, 36);
long eventMask;
Date data1 = new Date(eventMask);
DateFormat formatoData = DateFormat.getDateInstance(DateFormat.LONG, Locale.ITALY);
String s = formatoData.format(data1);
contentPane.add(data1);
// void add(Component);
// contentPane.add(data1.setDate(Calendar));
}
}

23 Risposte

  • Re: NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

    Mi dice "the method add(Component) in the type Container is not applicable for the arguments (Date)
  • Re: NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

    alberto ha scritto:


    Mi dice "the method add(Component) in the type Container is not applicable for the arguments (Date)
    Beh, visto così mi pare (abbastanza) ovvio:

    Date data1 = new Date(eventMask);
    [...]
    contentPane.add(data1);

    data1 non è un "componente" AWT/Swing ... è un oggetto java.sql.Date e quindi non lo puoi certo inserire in una interfaccia grafica!
  • Re: NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

    JTabbedPane data = new JTabbedPane(JTabbedPane.TOP);
    data.setBounds(140, 188, 105, 36);
    long eventMask;
    Date data1 = new Date(eventMask);
    DateFormat formatoData = DateFormat.getDateInstance(DateFormat.LONG, Locale.ITALY);
    String s = formatoData.format(data1);
    contentPane.add(data1);
  • Re: NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

    alberto ha scritto:


    Date data1 = new Date(eventMask);
    DateFormat formatoData = DateFormat.getDateInstance(DateFormat.LONG, Locale.ITALY);
    String s = formatoData.format(data1);
    contentPane.add(data1);
    Ripeto ancora che un Date non lo puoi mettere in un layout grafico, perché non è un componente grafico.
    Ora .. se devi solo visualizzare una data, potrebbe bastare un JLabel: formatti la data con DateFormat e la stringa la metti in JLabel.
    Discorso ben DIVERSO se la data deve essere editabile dall'utente. In tal caso ci sono diverse opzioni a seconda di quanto vuoi che sia "controllato" (diciamo limitato/agevolato) l'input dell'utente. E la libreria JCalendar è una possibilità.
  • Re: NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

    Esatto, devo farlo editare e controllare. ma non riesco ad installare JCalendar. come si è visto sono nuovo di java, provengo dal Cobol e stò incontrando molte difficoltà, soprattutto nelle istallazioni
  • Re: NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

    alberto ha scritto:


    Esatto, devo farlo editare e controllare. ma non riesco ad installare JCalendar. come si è visto sono nuovo di java, provengo dal Cobol e stò incontrando molte difficoltà, soprattutto nelle istallazioni
    JCalendar, se ben ricordo (mai più usata/vista da tempo, non so se è ancora in sviluppo ...), è alla fin fine un singolo jar da aggiungere "in classpath".
    Ma come/dove farlo dipende molto da come è impostato/buildato il progetto. Stai compilando/eseguendo "a mano" con i tools del JDK? O da un IDE? Se IDE, quale? Che tipo di progetto usa? Uno nativo del IDE o basato su es. Maven?
  • Re: NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

    Uso eclipse, jdk 13
  • Re: NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

    Allrora, come posso fare a far digitare all'utente una data formattata?
  • Re: NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

    alberto ha scritto:


    Uso eclipse, jdk 13

    alberto ha scritto:


    Allrora, come posso fare a far digitare all'utente una data formattata?
    Se in Eclipse hai fatto un normale "Java Project" specifico di Eclipse (non progetto Maven o altro insomma), allora:
    - fai una cartella es. libs nella "home" del progetto (allo stesso livello di src, per intenderci)
    - metti nella libs il jcalendar-X.Y.jar che trovi dentro lo zip (cartella interna lib) che scarichi al fondo qui: https://toedter.com/jcalendar
    - Proprietà del progetto -> Java Build Path, scheda "Libraries", poi pulsante "Add JARs..." (è il primo a destra se non hanno cambiato in Eclipse recenti) e vai a pescare il jar dalla libs. Questo configura nel progetto un path "relativo", quindi il progetto è "portabile" in un Eclipse su un'altra macchina.

    Poi usi le sue classi, che ovviamente devi studiare.
    Per far "girare" l'app FUORI dal IDE, poi serve un minimo di attenzione su come gestire il classpath.
  • Re: NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

    Infatti! ho fatto Java Build Patch, ma non mi si apre il pulsante ADD JARs. e non capisco il motivo
  • Re: NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

    ....non puoi mandarmi uno spezzone di codice dove mi posso confrontare per l'inserimento della data con l'IDE?
  • Re: NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

    alberto ha scritto:


    Infatti! ho fatto Java Build Patch, ma non mi si apre il pulsante ADD JARs. e non capisco il motivo
    Mi pare proprio strano .... davvero non è cliccabile??
  • Re: NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

    Si !!! e non capisco il motivo
  • Re: NON RIESCO A CAPIRE L'ERRORE SU add (ULTIMA RIGA DEL CODICE, UTILE)

    Ora dopo vari tentativi sono riuscito ad aggingere jcalendar nel classpatch, ma qiando do apply non inserisce nulla
Devi accedere o registrarti per scrivere nel forum
23 risposte