Johdanto JTextPane-ohjelmaan

JTextPane-sovellusta käytetään asiakirjan tyylittämiseen ja sen graafiseen esittämiseen, ja siihen on upotettu kuvia ja muita komponentteja. Se on JEditorPanen alaluokka, joka muodostaa perustan tyylitellyille komponenteille Java Swing -paketin tarjoamalle tekstille. Tätä voidaan käyttää myös mukautettujen tekstimuotojen lisäämiseen ja tyylitöntä tekstiä varten, käytetään tavallista tekstialuetta. JTextPane käyttää tyyliteltyjä asiakirjoja käyttämällä mallinaan StyledDocument-käyttöliittymää. Asiakirjarajapinta on vanhempi, josta StyledDocument-rajapinta on johdettu. Asiakirjarajapinta on myös JTextPane-sovelluksen oletusmalli.

JTextPanen rakentajat

  1. public JTextPane () : Tämä rakentaja näyttää uuden tyhjän tekstialueen. Tämä luo uuden StyledEditorKit-esiintymän ja asettaa asiakirjamallin nollaksi. Tämä rakentaja on peritty vanhemman rajapinnalta JEditorPane.
  2. public JtextPane (StyledDocument doc) : Uusi JTextPane luodaan asiakirjamallilla, jonka tässä määrittelee avainsana doc. Tämä rakentaja on peritty emorajapinnan asiakirjasta.

JTextPane-menetelmät

JTextPane-ohjelmassa on toteutettu kiinteitä, mutta lukemattomia menetelmiä. Muutamia tärkeimmistä menetelmistä on lueteltu alla:

1. Tyyli

Tätä menetelmää voidaan käyttää sisällyttämään uusia tyylejä loogiseen tyylijärjestykseen. Seuraavassa on muutamia tyyliä johdettuja lapsimenetelmiä:

addStyle: Tätä käytetään lisäämään uusi tyyli hierarkiaan. Tässä mainitut ominaisuudet ratkaistaan ​​alhaalta ylöspäin -menetelmällä siten, että lapselle annettu ominaisuus ohittaa saman määritteen automaattisesti vanhemmalta.

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

str-parametri on kokoelmansa ainutlaatuisen tyylin nimi. Nimi muuttuu tyhjäksi, kun tyyli vaihtuu. par on määritetty vanhemmatyyli. Tämä menetelmä addStyle palauttaa uuden tyylin.

removeStyle: Tätä käytetään poistamaan tyyli, joka on aiemmin lisätty asiakirjaan.

Syntaksi: public void removedStyle(String str)

str on poistettavan tyylin nimi

getStyle: Sitä käytetään hakemaan aiemmin lisätyn tyylin nimi, joka ei ole nolla.

Syntaksi: public Style getStyle (String str)

str on haettavan tyylin nimi

setLogicalStyle: Käytetään asettamaan tyyli käyttämään kappaletta nykyisestä caret-asennosta.

Syntaksi: public void setLogicalStyle (Style log)

loki on kappaleelle annettava looginen tyyli

getLogicalStyle: Käytetään hakemaan looginen tyyli, joka on annettu kappaleelle asetetulle nykyiselle caret-asennolle, ja palauttaa tyylin.

Syntaksi: public Style getLogicalStyle()

2. AttributeSet ()

On olemassa monia alaluokkia, joita käytetään hakemaan merkkiominaisuus, joka on caretin nykyisessä paikassa. Ne ovat seuraavat:

  • public AtrributeSet () getCharacterAttributes (): palauttaa määritteet nykyisestä caret-sijainnista.
  • public AttributeSet getParagraphAttributes (): Käytetään nykyisten kappaleiden määritteiden noutamiseen nykyisestä caret-sijainnista.
  • public AttributeSet setParagraphAttributes (Attribuutti atr, looginen uusi): Käytetään parametrien kautta välitettyjen määritteiden soveltamiseen kappaleeseen. Valintojen tapauksessa se käyttää määritteitä kappaleisiin, jotka leikkaavat tämän valinnan. Ja siinä tapauksessa, että valintaa ei ole, sitä sovelletaan kappaleeseen, joka on nykyisessä caret-asennossa. atr on ohitettu ominaisuus ja jos uudelle parametrille annetaan tosi, se korvaa ensin jo olemassa olevat määritteet.
  • public MvableAttributeSet getInputAttributes (): Käytetään paneelin syötemääritteiden noutamiseen.
  • public void setCharacterAttributes (AttributeSet atr, boolean new): Käytetään siirtämään määritteet merkin sisältöön. Attribuutit käytetään valitulle alueelle, kun valinta on läsnä, ja jos valintaa ei ole, määritteet lisätään mihin tahansa lisättävään tekstiin. uusi, jos tosi, palauttaa olemassa olevat määritteet
  • public AttributeSet getCharacterAttributes (): Hakee merkkimääritteet, jotka ovat läsnä caret-sijainnissa tai nolla.

3. StyledDocument ()

Sitä käytetään hakemaan malli, joka liittyy editoriin.

Syntaksi: public StyledDocument getStyledDocument()

4. setDocument

Käytetään liittämään editori tekstiasiakirjaan, jonka tulisi kuulua StyledDocument-ohjelmaan. Se ohittaa setTocument-luokan JTextComponentista. Siksi vaaditaan, että muokattava asiakirja on voitava muuntaa StyledDocument-tiedostoksi, jota ilman se heittää IllegalArgumentException.

Syntaksi: public void setDocument(Document new) - uusi on näytettävä tai muutettava asiakirja.

5. setEditorKit

Käytetään asettamaan paketti, joka on tällä hetkellä asennettu sisällön käsittelemiseen. Tätä ominaisuutta käytetään toimittajan sisältötyypin määrittämiseen. Se ohittaa setEditorKit luokan JEditorPane. Tämä heittää myös IllegalArgumentException, jos pakkaus ei kuulu StyledEditorKit-sovellukseen.

Syntaksi: public final void setEditorKit (EditorKit edit) - muokkaus on pakkauksen vaadittu toiminta.

6. paramString

Tämä palauttaa JTextPane-merkkijonon.

Syntaksi: protected String paramString() - Tätä menetelmää käytetään enimmäkseen virheenkorjaukseen ja sen palautettu sisältö vaihtelee toteutuksen välillä. Palautettu merkkijono voi olla tyhjä eikä olla tyhjä.

Ohjelma JTextPane-ohjelman toteuttamiseksi

//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);
)
)

lähtö:

johtopäätös

Siksi JTextPane-ohjelmaa käytetään aina tapauksissa, joissa asiakirjat on esitettävä graafisesti. Kaikilla loogista tyyliä sisältävän kappaleen määritteillä on oletusarvot, joita käytetään, jos niitä ei korosteta. JTextPane-sovelluksen etuna editointipaneeleihin verrattuna on, että siinä on nämä lukuisat sisäänrakennetut menetelmät, joiden kanssa on helppo soittaa ja työskennellä. Kuvien upottamiseen ei tarvita HTML- tai RTF-tiedostoa JTextPane-luokassa annettujen sovellusliittymien tarjoamisen takia.

Suositellut artikkelit

Tämä on opas JTextPane-ohjelmaan. Tässä keskustellaan menetelmistä, rakentajista ja ohjelmista JTextPane-sovelluksen toteuttamiseksi syntaksin ja tulosteen kanssa. Voit myös tarkastella seuraavaa artikkelia saadaksesi lisätietoja -

  1. JTextField Java
  2. JPanel Java
  3. JButton Java
  4. JSplitPane
  5. Heitä vs heittää | 5 suosituinta eroa, jotka sinun pitäisi tietää