एक JTextArea टेक्स्ट प्रदर्शित करने या उपयोगकर्ता को टेक्स्ट दर्ज करने की अनुमति देने के लिए एक बहु-लाइन टेक्स्ट घटक है और जब हम JTextArea घटक की कार्यक्षमता को लागू करने का प्रयास कर रहे होते हैं तो यह एक CaretListener इंटरफ़ेस उत्पन्न करेगा। एक JTextArea क्लास Java में JTextComponent क्लास को विरासत में देती है।
नीचे दिए गए उदाहरण में, हम ItemListener इंटरफ़ेस का उपयोग करके एक JTextArea क्लास को लागू कर सकते हैं जहां उपयोगकर्ता या तो वर्ड रैप या लाइन रैप चेकबॉक्स चुन सकता है।
उदाहरण
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class JTextAreaTest {
public static void main(String[] args ) {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
JFrame frame = new JFrame("JTextArea Test");
frame.setSize(350, 275);
final JTextArea textArea = new JTextArea(15, 65);
frame.add(new JScrollPane(textArea));
final JCheckBox wordWrap = new JCheckBox("word wrap");
wordWrap.setSelected(textArea.getWrapStyleWord());
wordWrap.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent ie) {
textArea.setWrapStyleWord(wordWrap.isSelected());
}
});
frame.add(wordWrap, BorderLayout.NORTH);
final JCheckBox lineWrap = new JCheckBox("line wrap");
lineWrap.setSelected(textArea.getLineWrap());
lineWrap.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent ie) {
textArea.setLineWrap(lineWrap.isSelected());
}
});
frame.add(lineWrap, BorderLayout.SOUTH );
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE );
frame.setVisible(true);
}
});
}
}
आउटपुट
