Въведение в JTabbedPane на Java

Класът JTabbedPane е един от многото класове (като JButton, JTextArea, JMenu, JTextField и др.), Че javax.swing 'java пакет осигурява API на java swing.

Пакетът Java Swing е част от основните класове на Java, JFCs.Тези основни класове се използват за създаване на графични потребителски интерфейси, приложения, базирани на прозорци, като се използват налични GUI компоненти, което улеснява програмиста да разработва настолни приложения. Те са написани изцяло в java top на AWT, Abstract Windows Toolkit.

Но обратно на AWT, пакетите Java Swing предоставят независими от платформата компоненти. Тези компоненти също са сравнително леко претеглени.

В края на тази статия ще можете да добавите Swing JComponents като JTabbedPane към AWT контейнер. Ще можете също да зададете позицията на вашия панел и рамка. Освен това ще научите как да създадете панел с раздели, който може да се превърта.

Какво е JTabbedPane?

JTabbedPane е един от класовете, предоставени от суинг пакета в Java. Той е много полезен, тъй като предоставя гъвкавост на потребителя да превключва между различни групи компоненти, които желае да види, като просто кликне върху един от раздели. Разделите могат да получат различни заглавия или икони.

Ето ежедневен пример за такъв прозорец, който има няколко раздела, до които можете да получите достъп, като щракнете върху раздели.

Прост прозорец „свойства“ на локален диск (тук, локален диск F: прозорец със свойства на моята система) на вашата компютърна система има множество раздели, наречени Общи, Инструменти, Хардуер и т.н., до които можете да получите достъп, като щракнете върху един от тях, е перфектен пример за панелите с раздели.

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

Индексиране и разположение на раздела JTabbedPane

Разделите са представени от индекс, който се решава според мястото на или мястото, в което е добавен раздела.

За да разберем това, нека предположим, че сте добавили първия си раздел. Тогава индексът му ще бъде равен на '0' и следващият ви раздел ще има индекс, равен на '1' и ще върви по мода, индексът на последния ви добавен раздел ще бъде равен на 'брой на минус 1'.

Класовете „Tabbed Pane“ използват единичен модел за избор, който представлява „набор от индекси на раздели“, както и „текущо избран индекс“, т.е.

По подразбиране разделите се поставят на ТОП местоположението, както можете да видите в прозореца със собственост на горния прозорец. Можете да промените разположението на този раздел в която и да е от посоките като НАЛЯВО, НАДЯСНО или отдолу, като използвате метод, наречен setTabPlacement.

JTabbedPane Конструктори в Java

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

Често използваните конструктори, докато използвате JTabbedPane, са изброени, както следва:

1. JTabbedPane ()

Конструкторът JTabbedPane () създава празен TabbedPane. Когато използваме конструктора JTabbedPane (), той създава прозореца без спецификация за неговото разположение. Така разделът е поставен на неговото място по подразбиране, което е ТОП, както беше разгледано по-горе, като използвате JTabbedPane.TOP.

2. JTabbedPane (int tabPlacement)

Този конструктор създава празен TabbedPane. Той предоставя привилегията да се определи посоката или мястото на панела. Поставянето се извършва, когато посоката е посочена с помощта на JTabbedPane.TOP, JTabbedPane.BOTTOM, JTabbedPane.LEFT или JTabbedPane.RIGHT.

3. JTabbedPane (int tabPlacement, int tabLayoutPolicy)

Празен прозорец с раздели се създава, когато се използва този конструктор. Това предоставя привилегията да се определи разположението за панела с раздели, същото като конструктора JTabbedPane (int tabPlacement).

Освен това позволява на програмиста да реши политиката на оформлението на раздели. Това позволява на програмиста да контролира как ще се показват раздели. Политиката за оформление на раздели е или зададена на JTabbedPane.SCROLL_TAB_LAYOUT или JTabbedPane.WRAP_TAB_LAYOUT. По подразбиране правилото е зададеноWRAP_TAB_LAYOUT.

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

Пример за JTabbedPane

Тук обсъждаме подробно Примера на JTabbedPane в Java:

Накрая малко упражнение, да започнем ли?

Това е частта, в която ще опитаме и добавим панела с раздели в нашия JFrame. Ще използваме javax.swing.JTabbedPane пакета ще ни предостави функцията да добавим раздели към нашата рамка.

Следва примерен код, използвайки JTabbedPane за създаване на раздели в нашия кадър.

import java.awt.BorderLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTabbedPane;
public class JTP_Layout
(
JFrame frame;
JTP_Layout()
(
//Creating our JFrame
frame= newJFrame("Tabbed Pane Sample");
//Terminating process after exiting
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//Adding TabbedPane Object
JTabbedPanetabbedPane = new JTabbedPane();
//Adding TabbedPane LayoutPolicy
tabbedPane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
//TabPlacement
//tabbedPane.setTabPlacement(JTabbedPane.BOTTOM);
//Setting our componentobject
//JRadioButton r1=new JRadioButton("A) Tab Component A");
//r1.setBounds(30, 30, 100, 90);
//Adding our First Panel Object
JPanel p1=new JPanel();
//Adding our component to the Panel
//p1.add(r1);
JPanel p2=new JPanel();
JPanel p3=new JPanel();
//Setting boundary values for the tabs
tabbedPane.setBounds(50, 50, 200, 200);
//Naming 'One' asour First Pane
tabbedPane.add("One", p1);
tabbedPane.add("Two", p2);
tabbedPane.add("Three", p3);
//Setting Frame'sposition to the center
frame.add(tabbedPane, BorderLayout.CENTER);
//Setting FRame'sSize
frame.setSize(400, 150);
//Setting visibility asTrue
frame.setVisible(true);
)
public static void main(String args())
(
new JTP_Layout();
)
)


Когато горната програма работи, ние получаваме следния прозорец като изход.

В горния пример добавихме раздели към нашия JFrame и дадохме различни имена на нашите раздели като "Един", "Два" и т.н. Можем също да добавим различни компоненти под различните си раздели, използвайки проста кодова линия, като по-долу.

Създадохме обект за радио бутона, r1 и след това този обект беше използван за добавяне на радио бутони към панела One, т.е. p1.

И компонентът „Радио Бутон“ ще се появи под първия ни панел, където го добавихме.

Използване на JTabbedPane конструктори

Вече използвахме в нашата програма конструктори като JTabbedPane (int tabPlacement) или JTabbedPane (int tabPlacement, int tabLayoutPolicy), но все още не сме виждали ефект.

Разберете това, ние създадохме Java класа за себе си и след това извикахме нашия конструктор, JTP_Layout (вижте кода). След това задаваме аргументи като setTabLayoutPolicy на SCROLL_TAB_LAYOUT, използвайки обекта на нашия клас.

Както бе споменато по-горе, когато политиката на таблаут е настроена на SCROLL, тя позволява на потребителя да превърта раздели в посока, използвайки бутон.

За илюстрация увеличих броя на раздели в нашата програма и зададох политиката на SCROLL, вижте какъв е ефектът:

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

Другият подобен аргумент, добавен към нашия конструктор, е setTabPlacement, който както е разгледано по-горе е зададен по подразбиране на ТОП. Но нашият конструктор ни помага да решим това, като настройваме разположението на раздела на BOTTOM или НАЛЯВО или НАДЯСНО.

Вече имахме такъв код офлайн в нашата програма, но коментирахме (вижте кода), когато коментарът бъде премахнат, вижте ефекта.

Обърнете внимание, че когато използвахме tabbedPane.setTabPlacement (JTabbedPane.BOTTOM), нашите раздели се преместиха в долната част на рамката.

Тук е важно да се отбележи, че няма нужда от „Обработка на грешки“, нашият JTabbedPane обект обработва ударите на мишката и клавиатурата или събитията. Все пак, ако искате подобна функционалност без интерфейса на раздела, можете да използвате оформление на картата вместо панел с раздели.

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

Това е, беше лесно нали?

Препоръчителни статии

Това е ръководство за JTabbedPane на Java. Тук обсъждаме въвеждането на конструкторите JTabbedPane и JTabbedPane заедно с неговия пример. Можете също да разгледате следните статии, за да научите повече-

  1. Конструктор и деструктор в Java
  2. JScrollPane на Java
  3. JComboBox на Java
  4. JDialog на Java
  5. Инструменти за разполагане на Java
  6. JFrame на Java