Jak utworzyć prostą tabelę w Javie do użytku w GUI

Używanie tablic do przechowywania danych tabeli

Prosty sposób na dostarczenie danych dla

klasa ma użyć dwóch tablic. Pierwszy zawiera nazwy kolumn w

szyk:

Druga tablica to dwuwymiarowa tablica obiektów, która przechowuje dane dla tabeli. Tablica ta obejmuje na przykład sześciu olimpijskich pływaków:

Kluczem tutaj jest upewnienie się, że dwie tablice mają taką samą liczbę kolumn.

Konstruowanie JTable

Po wprowadzeniu danych utworzenie tabeli jest prostym zadaniem. Po prostu zadzwoń

JTable
konstruktor i przekaż mu dwie tablice: prawdopodobnie będziesz chciał dodać paski przewijania, aby użytkownik mógł zobaczyć wszystkie dane. Aby to zrobić, umieść.
JTable
w
JScrollPane
: Teraz, gdy tabela jest wyświetlana, zobaczysz kolumny i wiersze danych i będziesz mógł przewijać w górę i w dół.

Obiekt JTable zapewnia interaktywną tabelę. Jeśli klikniesz dwukrotnie dowolną komórkę, będziesz mógł edytować zawartość - chociaż każda edycja wpływa tylko na GUI, a nie na dane bazowe. (Na detektor zdarzeń należałoby zaimplementować obsługę danych.).

instagram viewer

Aby zmienić szerokość kolumn, najedź myszką na krawędź nagłówka kolumny i przeciągnij ją w tę iz powrotem. Aby zmienić kolejność kolumn, kliknij i przytrzymaj nagłówek kolumny, a następnie przeciągnij go do nowej pozycji.

Sortowanie kolumn

Aby dodać możliwość sortowania wierszy, wywołaj

setAutoCreateRowSorter
Metoda: Gdy ta metoda jest ustawiona na wartość true, możesz kliknąć nagłówek kolumny, aby posortować wiersze zgodnie z zawartością komórek w tej kolumnie.

Zmiana wyglądu tabeli

Aby kontrolować widoczność linii siatki, użyj

setShowGrid
Metoda: Aby całkowicie zmienić kolor tabeli, użyj.
setBackground
i
setGridColor
metody: szerokości kolumn tabeli są domyślnie równe. Jeśli pojemnik, w którym znajduje się stół, jest ponownie duży, wówczas szerokości kolumn rozszerzają się i kurczą, a pojemnik staje się większy lub mniejszy. Jeśli użytkownik zmieni rozmiar kolumny, szerokość kolumn po prawej stronie ulegnie zmianie, aby uwzględnić nowy rozmiar kolumny.

Początkowe szerokości kolumn można ustawić za pomocą metody setPreferredWidth lub kolumny. Użyj klasy TableColumn, aby najpierw uzyskać odwołanie do kolumny, a następnie metody setPreferredWidth, aby ustawić rozmiar:

Wybieranie wierszy

Domyślnie użytkownik może wybrać wiersze tabeli na jeden z trzech sposobów:

  • Aby wybrać pojedynczy wiersz, wybierz komórkę tabeli w tym wierszu.
  • Aby zaznaczyć ciągłe, wiele wierszy, przeciągnij myszą nad kilkoma wierszami lub wybierz komórki tabeli, naciskając komórkę shift.
  • Aby wybrać nieciągłe, wiele wierszy, zaznacz komórki tabeli, przytrzymując Klawisz Control (klawisz polecenia dla komputerów Mac).

Korzystanie z modelu tabeli

Użycie kilku tablic dla danych tabeli może być przydatne, jeśli chcesz prosty Strunowyna podstawie tabeli, którą można edytować. Jeśli spojrzysz na tablicę danych, którą stworzyliśmy, zawiera ona inne typy danych niż

-

kolumna zawiera

i

kolumna zawiera

. Jednak obie te kolumny są wyświetlane jako ciągi. Aby zmienić to zachowanie, utwórz model tabeli.

Model tabeli zarządza danymi, które mają być wyświetlane w tabeli. Aby zaimplementować model tabeli, możesz utworzyć klasę rozszerzającą

klasa:

Sześć powyższych metod to metody stosowane w tym przewodniku krok po kroku, ale istnieje więcej metod zdefiniowanych przez

klasy, które są przydatne w manipulowaniu danymi w pliku

obiekt. Rozszerzając klasę na użycie

musisz wdrożyć tylko

,

i

metody

Utwórz nową klasę, wdrażając te pięć metod pokazanych powyżej:

W tym przykładzie ma to sens

klasa do przechowywania dwóch ciągów zawierających dane tabeli. A później

,

i

metody mogą korzystać z tablic, aby podać wartości dla tabeli. Zauważ też, jak

Metoda została napisana, aby uniemożliwić edytowanie pierwszych dwóch kolumn.

Teraz zamiast używać dwóch tablic do tworzenia

obiekt, możemy użyć

klasa:

Po uruchomieniu kodu zobaczysz, że

obiekt korzysta z modelu tabeli, ponieważ żadnej z komórek tabeli nie można edytować, a nazwy kolumn są poprawnie używane. Jeśli…

metoda nie została zaimplementowana, wówczas nazwy kolumn w tabeli byłyby wyświetlane jako domyślne nazwy A, B, C, D itp.

Rozważmy teraz metodę

. Samo to sprawia, że ​​model tabeli jest warty wdrożenia, ponieważ zapewnia

obiekt o typie danych zawartym w każdej kolumnie. Jeśli pamiętasz, tablica danych obiektów ma dwie kolumny, które nie są

typy danych:

kolumna zawierająca liczby całkowite oraz

kolumna zawierająca

. Znajomość tych typów danych zmienia funkcjonalność zapewnianą przez

obiekt dla tych kolumn. Uruchomienie przykładowego kodu tabeli z zaimplementowanym modelem tabeli oznacza

kolumna będzie faktycznie serią pól wyboru.

Dodanie edytora ComboBox

Możesz zdefiniować niestandardowe edytory dla komórek w tabeli. Na przykład, możesz uczynić pole kombi alternatywą dla standardowej edycji tekstu dla pola.

Oto przykład użycia

pole kraju:

Aby ustawić domyślny edytor dla kolumny kraju, użyj

klasa, aby uzyskać odniesienie do kolumny kraju i

metoda ustawienia

jako edytor komórek:

instagram story viewer