Uvod u JTextPane

JTextPane koristi se za stiliziranje dokumenta i njegovo grafičko predstavljanje te je ugradio slike i druge komponente. To je podrazred JEditorPane koji čini osnovu za stilizirane komponente za tekst koji pruža Java Swing Package. To se može koristiti i za dodavanje prilagođenih formata teksta, a za neuredljeni tekst koristi se obično područje teksta. JTextPane koristi stilizovane dokumente koristeći sučelje StyledDocument kao svoj model. Sučelje dokumenta je nadređeni iz kojeg je izvedeno sučelje StyledDocument. Sučelje dokumenta je također zadani model za JTextPane.

Konstruktori JTextPane-a

  1. javni JTextPane () : Ovaj konstruktor prikazuje novo prazno područje teksta. To stvara novu instancu StyledEditorKit i postavlja model dokumenta na nulu. Ovaj konstruktor naslijeđen je od roditeljskog sučelja JEditorPane.
  2. javni JtextPane (StyledDocument doc) : Novi JTextPane kreira se s modelom dokumenta koji je ovdje zadana ključna riječ doc. Ovaj konstruktor nasljeđuje se iz dokumenta nadređenog sučelja.

Metode JTextPane

U JTextPane se primjenjuju nepoštene, ali nebrojene metode. Dolje su navedene neke od glavnih metoda:

1. Stil

Ova se metoda može koristiti za uključivanje novih stilova u hijerarhiju logičkog stila. Evo nekoliko dječjih metoda izvedenih iz Stil-a:

addStyle: koristi se za dodavanje novog stila hijerarhiji. Ovdje su navedeni atributi riješeni metodom odozdo prema gore, tako da će atribut dat djetetu automatski nadjačati isti atribut od roditelja.

Sintaksa: public Style addStyle (String str, Style par)

str parametar je naziv jedinstvenog stila u svojoj kolekciji. Naziv postaje nula kada stil postane neimenovan. par je naveden roditeljski stil. Ova metoda addStyle vraća novi Stil.

removeStyle: koristi se za uklanjanje stila koji nije null koji je prethodno dodan u dokument.

Sintaksa: public void removedStyle(String str)

str je ime stila koji se uklanja

getStyle: Koristi se za dohvaćanje imena stila not-null i koji je prethodno dodan.

Sintaksa: public Style getStyle (String str)

str je naziv stila koji se dohvaća

setLogicalStyle: Koristi se za postavljanje stila za korištenje stavka iz trenutne pozicije karata.

Sintaksa: public void setLogicalStyle (Style log)

dnevnik je logički stil koji je dan u odlomak

getLogicalStyle: koristi se za dohvaćanje logičkog stila zadanog stavka u trenutnoj poziciji karata i vraća stil.

Sintaksa: public Style getLogicalStyle()

2. AttributeSet ()

Postoji puno podrazreda koji se koriste za pronalaženje atributa znakova koji je trenutno na položaju kareta. Oni su kako slijedi:

  • javni AtrributeSet () getCharacterAttributes (): vraća atribute s trenutnog položaja karata .
  • javni AttributeSet getParagraphAttributes (): koristi se za dohvaćanje atributa sadašnjih odlomaka s trenutne pozicije karata .
  • javni AttributeSet setParagraphAttributes (Atribut atr, boolean new): koristi se za primjenu atributa prosljeđenih kao parametara u odlomku. U slučaju odabira, on primjenjuje atribute na odlomke koji presijecaju ovaj odabir. A u slučaju kada nema izbora, primjenjuje se na odlomak koji je prisutan u trenutnoj poziciji karata. atr je atribut koji je proslijeđen i ako je novom parametru dodano točno, prvo zamjenjuje već postojeće atribute.
  • javni MutableAttributeSet getInputAttributes (): Koristi se za dohvaćanje ulaznih atributa za okno.
  • public void setCharacterAttributes (AttributeSet atr, boolean new): koristi se za primjenu prenesenih atributa na sadržaj znakova. Atributi se primjenjuju na odabrani raspon kad je odabir prisutan, a ako izbor nije prisutan, tada se atributi primjenjuju na bilo koji novi tekst koji je umetnut. novo ako true vraća postojeće atribute
  • javni AttributeSet getCharacterAttributes (): Dohvaća atribute znakova prisutne na trenutnoj lokaciji karata ili nulu.

3. StyledDocument ()

Koristi se za dohvaćanje modela koji je povezan s uređivačem.

Sintaksa: public StyledDocument getStyledDocument()

4. setDocument

Koristi se za pridruživanje uređivača tekstualnom dokumentu koji bi trebao pripadati StyledDocument. Nadjačava klasu setDocument iz JTextComponent. Stoga je potrebno da dokument koji treba uređivati ​​treba pretvoriti u StyledDocument bez kojeg izbacuje IllegalArgumentException.

Sintaksa: public void setDocument(Document new) - novi je dokument koji će se prikazati ili promijeniti.

5. setEditorKit

Koristi se za postavljanje kompleta koji je trenutno instaliran za rukovanje sadržajem. Ovo je svojstvo koje se koristi za utvrđivanje vrste sadržaja uređivača. Nadjačava setEditorKit iz klase JEditorPane. Ovo također izbacuje IllegalArgumentException ako komplet ne pripada StyledEditorKit.

Sintaksa: public final void setEditorKit (EditorKit edit) - uređivanje je potrebno ponašanje kompleta.

6. paramString

Vraća nizu JTextPane-a.

Sintaksa: protected String paramString() - Ova se metoda uglavnom koristi za uklanjanje pogrešaka, a njegov sadržaj koji se vraća varira između različitih implementacija. Vraćeni niz može biti prazan, a ne nula.

Program za implementaciju JTextPane

//Importing all the dependancies of Java awt used for GUI purpose
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Font;
//Importing all the dependancies of Java swing package also used for GUI purpose and has many built-in functions
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextPane;
import javax.swing.text.BadLocationException;
import javax.swing.text.Document;
import javax.swing.text.SimpleAttributeSet;
import javax.swing.text.StyleConstants;
public class JTextPaneTest (
//Handling BadLocationException to report such bad locations in the document model
public static void main(String args()) throws BadLocationException (
//The string name we give here is displayed as the document name
JFrame jfr = new JFrame("Example of JTextPane");
// Makes the application to exit preventing it from running in the background
jfr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container con = jfr.getContentPane();
JTextPane jpan = new JTextPane();
SimpleAttributeSet attrSet = new SimpleAttributeSet();
StyleConstants.setBold(attrSet, true);
// Attributes are set just before adding the text
jpan.setCharacterAttributes(attrSet, true);
jpan.setText("This ");
// Few of the other examples of attributes and features present in JTextPane
attrSet = new SimpleAttributeSet();
StyleConstants.setAlignment(attrSet, 1);
// Required colors can be set from the range of fixed available choices
StyleConstants.setForeground(attrSet, Color.yellow);
StyleConstants.setBackground(attrSet, Color.magenta);
Document doc = jpan.getStyledDocument();
doc.insertString(doc.getLength(), "is an ", attrSet);
attrSet = new SimpleAttributeSet();
StyleConstants.setItalic(attrSet, true);
StyleConstants.setForeground(attrSet, Color.RED);
StyleConstants.setBackground(attrSet, Color.cyan);
doc.insertString(doc.getLength(), "Example ", attrSet);
StyleConstants.setUnderline(attrSet, true);
StyleConstants.setFontSize(attrSet, 20);
doc.insertString(doc.getLength(), "of JTextPane ", attrSet);
// Scroll Pane is used to display a component and to change its size dynamically
JScrollPane scrollPane = new JScrollPane(jpan);
con.add(scrollPane, BorderLayout.CENTER);
jfr.setSize(550, 300);
jfr.setVisible(true);
)
)

Izlaz:

Zaključak

Stoga se JTextPane uvijek koristi u slučajevima kada dokumente treba grafički predstaviti. Svi atributi stavka s priloženim logičkim stilom imaju zadane vrijednosti koje će se primijeniti u slučaju da nisu poništene. Prednost koju JTextPane ima nad Oknima za uređivanje je ta što ima ove brojne ugrađene metode koje je lako nazvati i raditi. Zbog umetanja slika u HTML ili RTF datoteku nema potrebe zbog pružanja API-ja danih u klasi JTextPane.

Preporučeni članci

Ovo je vodič za JTextPane. Ovdje smo raspravljali o metodama, konstruktorima i programu za implementaciju JTextPane sa sintaksom i izlazom. Možete pogledati i sljedeći članak da biste saznali više -

  1. JTextField u Javi
  2. JPanel u Javi
  3. JButton na Javi
  4. JSplitPane
  5. Baciti protiv bacanja | Top 5 razlika koje biste trebali znati

Kategorija: