Das letzte Programmbeispiel soll um eine ``geheimnisvolle'' Schaltfläche ergänzt werden. Um dem Benutzer dennoch Auskunft über sie zu geben, wird ein Hilfetext angezeigt, wenn der Mauszeiger eine Zeit lang über der Schaltfläche verharrt.
import java.awt.*; import javax.swing.*; import java.awt.event.*; public class AuswahlHilfe extends JApplet implements ItemListener, ActionListener { Choice auswahl; JButton was; boolean toggle = true; String hilfe; public void init() { Container c = getContentPane(); c.setLayout(new FlowLayout()); was = new JButton("was ?"); c.add(was); hilfe = "Hier invertieren Sie die Vordergrund- und Hintergrundfarbe " + "der untenstehenden Anzeige ... "; was.setToolTipText(hilfe); was.addActionListener(this); auswahl = new Choice(); auswahl.add("Linux"); auswahl.add("MacOS"); auswahl.add("Novell"); auswahl.add("Solaris"); auswahl.add("UNIX"); auswahl.add("Windows"); c.add(auswahl); auswahl.addItemListener(this); } public void itemStateChanged(ItemEvent ie) { repaint(); } public void actionPerformed(ActionEvent ae) { if (ae.getSource()==was) { if (toggle == true) toggle = false; else toggle = true; } repaint(); } public void paint (Graphics bs) { String betriebssystem = auswahl.getSelectedItem(); if (toggle == true) { bs.setColor(Color.yellow); bs.fillRect(30,65,100,20); bs.setColor(Color.blue); bs.drawString(betriebssystem, 40, 80); } if (toggle == false) { bs.setColor(Color.blue); bs.fillRect(30,65,100,20); bs.setColor(Color.yellow); bs.drawString(betriebssystem, 40, 80); } } }