next up previous contents
Nächste Seite: Karteikarten verwenden Aufwärts: Grundlagen Vorherige Seite: Mit Auswahllisten arbeiten   Inhalt

Kontextbezogene Hilfetexte anzeigen

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);
        }
    }
}


\includegraphics[width=8cm]{AppAuswahlHilfe.ps}



Alfred Nussbaumer 2003-02-10