Increase JTextArea Font Size with JSlider

Here is sample tutorial to increase JTextArea font size using JSlider.

import javax.swing.*;
import java.awt.*;
import javax.swing.event.*;
class JTextAreaFont extends JFrame

JTextArea jt;
JScrollPane js;
JSlider jl;

public JTextAreaFont()

setTitle("Increase JTextArea Font Size");
setLayout(new GridLayout());

jt=new JTextArea();
jt.setFont(new Font("Times New Roman",Font.BOLD,20));
js=new JScrollPane(jt);

jl=new JSlider(1,200);

jl.addChangeListener(new ChangeListener(){
public void stateChanged(ChangeEvent ce)
jt.setFont(new Font("Times New Roman",Font.BOLD,jl.getValue()));



public static void main(String args[])
new JTextAreaFont();


javax.swing.*: For JFrame, JTextArea, JSlider components.

java.awt.*: For GridLayout, Font

javax.swing.event.*: For ChangeListener, ChangeEvent

JTextArea: Holds text of multiple lines of text.

jt.setLineWrap(true): Proceed to next line, when reached to end ignoring words.

jt.setWrapStyleWord(true): When, word reaches end of line incompletely, entire word settles in a next line. As observed in Notepad.

JScrollPane: For JTextArea, when size is increased, JTextArea looks odd, so scrollpane is added.

JSlider: Observed in Media players, used in adjusting progress. Here used for increasing font size.

jl.setValue(20): Font size of JTextArea is 20 initially. See above.

ChangeEvent: Generated when user changes JSlider value.

ChangeListener: Listener for ChangeEvent.

setFont(font): Used to set font for JTextArea, takes java.awt.Font as parameter, Font class constructor consists of three parameters, font name, style, size respectively.

setExtendedState(MAXIMIZED_BOTH): Make frame maximized both the sides.

Posted by at on

Tags: Swing Event Handling,