Как да създадете проста таблица в Java за използване в GUI

Използване на масиви за съхранение на данните в таблицата

Лесен начин за предоставяне на данни за

клас е да се използват два масива. Първият съдържа имената на колоните в a

масив:

Вторият масив е двуизмерен масив от обекти, който съхранява данните за таблицата. Този масив, например, включва шестима олимпийски плувци:

Ключът тук е да се уверите, че двата масива имат еднакъв брой колони.

Конструиране на JTable

След като разполагате с данните, е проста задача да създадете таблицата. Просто се обадете на

JTable
конструктор и го предайте двата масива: Вероятно ще искате да добавите ленти за превъртане, за да сте сигурни, че потребителят може да вижда всички данни. За целта поставете.
JTable
в a
JScrollPane
: Сега, когато се покаже таблицата, ще видите колоните и редовете с данни и ще имате възможност за превъртане нагоре и надолу.

Обектът JTable предоставя интерактивна таблица. Ако щракнете двукратно върху някоя от клетките, ще можете да редактирате съдържанието - въпреки че всяко редактиране засяга само GUI, а не основните данни. (An

instagram viewer
слушател на събитията ще трябва да бъде приложено за справяне с промяната на данните.).

За да промените ширините на колоните, задръжте курсора на мишката върху ръба на колоната и го плъзнете напред и назад. За да промените реда на колоните, щракнете и задръжте заглавката на колоната, след което го плъзнете до новата позиция.

Сортиране на колони

За да добавите възможност за сортиране на редовете, обадете се на

setAutoCreateRowSorter
метод: Когато този метод е зададен на true, можете да щракнете върху заглавката на колоната, за да сортирате редовете според съдържанието на клетките под тази колона.

Промяна на външния вид на таблицата

За да контролирате видимостта на линиите на мрежата, използвайте

setShowGrid
метод: За да промените изцяло цвета на таблицата, използвайте.
setBackground
и
setGridColor
методи: Ширините на колоните на таблицата са равни по подразбиране. Ако контейнерът, в който е таблицата, е преоразмерен, тогава ширините на колоните ще се разширяват и свиват и контейнерът става по-голям или по-малък. Ако потребителят оразмери колоната, тогава ширината на колоните вдясно ще се промени, за да се съобрази с новия размер на колоната.

Началните ширини на колоните могат да бъдат зададени чрез метода setPreferredWidth или колона. Използвайте класа TableColumn, за да получите първо препратка към колоната, а след това метода setPreferredWidth, за да зададете размера:

Избор на редове

По подразбиране потребителят може да избира редовете на таблицата по един от трите начина:

  • За да изберете един ред, изберете клетка на таблицата в този ред.
  • За да изберете непрекъснати, множество редове, плъзнете мишката върху няколко реда или изберете клетките на таблицата с натисната клетка за смяна.
  • За да изберете непрекъснати, няколко реда, изберете клетките на таблицата, докато държите контролен ключ (команден ключ за Macs).

Използване на модел на таблицата

Използването на няколко масива за данните на таблица може да бъде полезно, ако искате просто низбазирана таблица, която може да се редактира. Ако погледнете масива от данни, който създадохме, той съдържа други типове данни от

- на

колоната съдържа

и на

колоната съдържа

. И все пак и двете тези колони се показват като струни. За да промените това поведение, създайте модел на таблицата.

Модел на таблица управлява данните, които се показват в таблицата. За да внедрите модел на таблица, можете да създадете клас, който разширява

клас:

Шестте метода по-горе са тези, използвани в това ръководство стъпка по стъпка, но има повече методи, дефинирани от

клас, които са полезни при манипулиране на данните в a

обект. Когато разширявате клас, за да използвате

от вас се изисква да внедрите само

,

и

методи.

Създайте нов клас, прилагайки тези пет метода, показани по-горе:

Има смисъл в този пример за

клас да държи двата низа, съдържащи данните от таблицата. Тогава

,

и

методите могат да използват масивите, за да предоставят стойностите за таблицата. Също така забележете как

метод е написан, за да забрани първите две колони да бъдат редактирани.

Сега, вместо да използвате двата масива за създаване на

обект, можем да използваме

клас:

Когато кодът работи, ще видите, че

обектът използва модела на таблицата, тъй като никоя от клетките на таблицата не може да се редактира и имената на колоните се използват правилно. Ако

методът не е приложен, тогава имената на колоните в таблицата ще се показват като имена по подразбиране на A, B, C, D и т.н.

Нека сега разгледаме метода

. Това само прави модела на таблицата си струва да бъде внедрен, защото той предоставя

обект с типа данни, съдържащ се във всяка колона. Ако си спомняте, масивът от данни за обекти има две колони, които не са

типове данни: the

колона, която съдържа вписвания и

колона, която съдържа

. Познаването на тези типове данни променя функционалността, осигурена от

обект за тези колони. Изпълнението на примерния код на таблицата с внедрения модел таблица означава

колоната всъщност ще бъде поредица от квадратчета.

Добавяне на редактор на ComboBox

Можете да определите персонализирани редактори за клетките в таблицата. Например, можете да направите комбинирано поле алтернатива на стандартното редактиране на текст за поле.

Ето пример за използване

полето на държавата:

За да зададете редактора по подразбиране за колоната за държава, използвайте

клас, за да получите справка за колоната за държава и

метод за задаване на

като редактор на клетки:

instagram story viewer