So I've got this small chatbar that I've made myself.

I have two questions.

First of all, how do I display/hide it, with all of the text characters in it and everything once you type, in a simple way? It seems like it'll be very complicated to create a custom chatbar.

Second, what are my options for already exiting chatbars? How do I implement them?

This is my current chatbar code, obviously nowhere near completed:
Java Code:
package game.gfx.gui;

import game.InputHandler;

public abstract class GUI {
	 private int width;
	 private int height;
   public GUI(int width, int height) {
	   this.width = width;
	   this.height = height;
   }
   public abstract void tick();
   public abstract void render();
}
Java Code:
package game.gfx.gui;

import java.awt.image.BufferedImage;
import java.io.IOException;

import javax.imageio.ImageIO;

import game.InputHandler;
import game.gfx.Screen;

public class ChatBar extends GUI {
	private int width;
	private int height;
	private boolean display;
	private InputHandler input;
	private BufferedImage barSide;
	private BufferedImage barMain;
	private Screen screen;
	private String message;
	
	public ChatBar(int width, int height, InputHandler input, Screen screen) {
		super(width, height);
		this.width = width;
		this.height = height;
		this.display = false;
		this.input = input;
		this.screen = screen;
		this.message = "";
		try {
			BufferedImage barBase = ImageIO.read(ChatBar.class.getResource("/gui/chatbar.png"));
		} catch (IOException e) {
			e.printStackTrace();
		}
		//int w = barBase.getHeight(null);
		//int h = barBase.getWidth(null);
	}
	@Override
	public void tick() {
		if(display) {
			this.render();
		}	
	}
	@Override
	public void render() {
		// TODO Auto-generated method stub
		
	}
	
}