|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
[java]JTable numero di righe in base a mese
Salve a tutti
Volevo chiedervi se potevate suggerirmi un modo per ottenere questo: Necessito di una JTable che non abbia un numero prefissato di righe, ma che le generi in base al mese che viene scelto su un qualche tipo di oggetto (che confesso di non sapere ancora quale). Per esempio, se la scelta del mese è febbraio, mi crei automaticamente 28 righe, se novembre 30 righe etc.... In C# riesco a farlo facilmente con un oggetto di tipo DateTimePicker e con un oggetto DataGridView, in un modo del genere: Codice:
//codice ed oggetti di C# DataGridView.Rows.Count = DateTimePicker.SelectedMonth.GetDaysInMonth; Grazie Mille. RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 517
|
Eccoti un esempio, lo puoi fare direttamente dal costruttore
public class MyTable extends JTable{ public MyTable() { super(); } public MyTable(int row, int col) { super(row, col); } } class Launch { public static void main (String[] args) { Calendar cal = new GregorianCalendar(1999, Calendar.FEBRUARY, 1); int days = cal.getActualMaximum(Calendar.DAY_OF_MONTH); MyTable(days,<colonne>); } } |
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Basta creare un JTable usando uno dei suoi costruttori, quindi o usando un table-model, o passando già un set di dati o specificando il numero di righe/colonne.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 517
|
Quote:
E' prolisso, ma era giusto per mostrare l'utilizzo del costruttore |
|
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
Quote:
![]() Tento di esporvi meglio il mio problema: Ho già realizzato questo programminoino in C# e devo convertirlo in Java. Non è niente di complicato (ovviamente per voi, per me già hello world è un traguardo Ho un form, in cui devo piazzare vari controlli di tipo textbox, combobox, bottoni et similia. La mia prima difficoltà in Java, è appunto di avere a disposizione una griglia (che se non ho capito male posso associare alla JTable) nella quale l'utente dovrà inserire alcuni dati. Ora, non c'è una predeterminazione per il mese che dovrà scegliere l'utente per immettere i dati, da qui la mia richiesta di generare il numero di righe a run time in base al mese scelto. Le colonne invece sono un numero predeterminato. La seconda è più complessa difficoltà (sempre per me) è di "tradurre" i metodi e le proprietà che ho a disposizione in .NET per l'oggetto DataGridView per la JTable. Ma questa la posso affrontare in un secondo momento. Dato che documentandomi credo di aver capito che sia più il framework .NET ad avere attinto alle sterminate librerie di Java, avrei bisogno soltanto che qualcuno di voi più esperto mi guidi con piccoli suggerimenti e input a svolgere al meglio questo mio primo compito un pò più impegnativo, nel senso che vorrei iniziare a scrivere in maniera abbastanza corretta già dall'inizio (con la consapevolezza che è ovvio che più si va avanti più ci si migliora). Grazie ancora RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
|
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
ad ogni modo, ho problemi a capire il funzionamento dell'esempio di yorkeiser:
Codice:
import javax.swing.table.AbstractTableModel;
import java.util.Calendar;
import java.util.*;
public class JTest {
public JTest()
{
super();
}
public JTest(int row, int col)
{
super(row, col);
}
}
class Launch
{
public static void main(String[] args)
{
Calendar cal = new GregorianCalendar(2007, Calendar.JANUARY, 1);
int days = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
JTest(days, 8);
}
}
Codice:
JTest.java:13: Object() in java.lang.Object cannot be applied to (int,int)
super(row, col);
^
JTest.java:23: cannot find symbol
symbol : method JTest(int,int)
location: class Launch
JTest(days, 8);
^
2 errors
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
ehm...
![]() per favore, non tenete conto di quanto postato qui sopra... correggo il codice e poi vi richiederò aiuto ..... grazie.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
|
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Questo è un semplice esempio:
Codice:
import java.awt.*;
import javax.swing.*;
import java.util.*;
public class TabellaGiorniFrame extends JFrame
{
private JScrollPane scrollPane;
private JTable table;
public TabellaGiorniFrame ()
{
super ("Tabella giorni");
setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
setSize (300, 300);
Calendar cal = new GregorianCalendar (2007, Calendar.JANUARY, 1);
int days = cal.getActualMaximum (Calendar.DAY_OF_MONTH);
table = new JTable (days, 4);
scrollPane = new JScrollPane (table,
JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
add (scrollPane);
}
public static void main (String[] args)
{
SwingUtilities.invokeLater (new Runnable()
{
public void run ()
{
TabellaGiorniFrame f = new TabellaGiorniFrame ();
f.setVisible (true);
}
});
}
}
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
Quote:
Devo provare a farla diventare identica a quella che ho sul C# (che è il mio obiettivo primario). Grazie a tutti per il momento, torno a seccarvi fra poco RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
|
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 06:44.





















