package javacodebook.gui.tooltip;

import javax.swing.*;
import java.awt.event.*;
import java.awt.*;

/**
 * @author Benjamin Rusch
 * 
 * In Swing besitzen die Komponennten sehr viel mehr eingebaute Features, 
 * so lässt sich einer Komponente ein Tooltip durch einen einfachen 
 * Methodenaufruf zuordnen
 */

public class ToolTipJFrame  extends JFrame {
	
	private JLabel label = new JLabel("Button:");
	private JButton ok = new JButton("Konsole");
	
	private Container content 	= null;
	
	/**
 	*	Konstruktor von ToolTipJFrame.  
 	*/	
	public ToolTipJFrame(String title) {
		
		super(title);
	    content = this.getContentPane();
	    content.setLayout(new FlowLayout());
	    
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		// Der Button bekommt nur aus demonatrationszwecken eine 
		// simple Funktionalität
		ok.addActionListener(new ActionListener(){
					public void actionPerformed(ActionEvent ae){
						System.out.println("Button wurde gedrückt");
					}
			});
	
		// mit setTooltipText() wird, sobald die Maus etwas länger 
		// über der Komponente liegt, ein kleines Fenster mit angegebenem Text
		// erscheinen
		label.setToolTipText("Button nebenan schreibt was auf die Konsole!");	
		ok.setToolTipText("Dieser Button schreibt was auf die Konsole!");	
		
		content.add(label);
		content.add(ok);
		
	}

}
