Wenn Sie „Kingsoft PowerWord“ oder „Orient Express“ verwendet haben, werden Sie sicherlich an den rollierenden Untertiteln im „Info“-Fenster interessiert sein. Tatsächlich kann diese Funktion mithilfe der Timer-Steuerung in Delphi problemlos realisiert werden.
1. Designideen
Platzieren Sie zunächst ein Panel-Steuerelement auf dem Formular und platzieren Sie den anzuzeigenden Text im Panel-Steuerelement. Anschließend kann die Position des Panel-Steuerelements innerhalb eines bestimmten Intervalls kontinuierlich geändert werden, um den Rolleffekt zu erzielen Untertitel.
2. Implementierungsmethode
1. Erstellen Sie ein neues Formular und legen Sie seine Eigenschaften wie folgt fest:
Name:frmAbout1
AutoScroll:False
2. Platzieren Sie ein Panel-Steuerelement im Formular. Der Standardname lautet Panel1. Legen Sie seine Eigenschaften wie folgt fest:
BevelOuter:bvNone
Bildunterschrift: (auf leer gesetzt)
Passen Sie die Höhe und Breite von Panel1 an, um daraus einen vertikalen Streifen zu machen. Die Höhe hängt vom anzuzeigenden Inhalt ab (sie kann größer als die Höhe des Formulars sein).
3. Platzieren Sie ein Label-Steuerelement auf Panel1, um Text anzuzeigen. Natürlich können Sie auch ein Bildsteuerelement darauf platzieren, um Bilder anzuzeigen. Die Größe des Bildes sollte jedoch nicht zu groß sein, da dies sonst den Anzeigeeffekt beeinträchtigt.
4. Platzieren Sie ein Timer-Steuerelement im Formular. Der Standardname lautet Timer1. Legen Sie den Wert der Interval-Eigenschaft auf 50 fest und geben Sie den folgenden Code in das OnTimer-Ereignis ein:
wenn Panel1.top>-Panel1.height dann
Panel1.top:=Panel1.top-1
anders
Panel1.top:=frmAbout1.height-35;
{Stellen Sie fest, ob Panel1 an den oberen Rand des Formulars verschoben wurde. Wenn nicht, verschieben Sie Panel1 an den unteren Rand des Formulars und zeigen Sie die Untertitel in einer Schleife an.}
5. Platzieren Sie ein Button-Steuerelement im Formular, setzen Sie seine Caption-Eigenschaft auf „OK“ und geben Sie den folgenden Code in das OnClick-Ereignis ein:
close;{Formular schließen}
3. Verbessern Sie die Analyse
Das Obige ist ein einfacher Implementierungsprozess für rollierende Untertitel, aber es gibt noch einen Bereich, der weiter verbessert werden muss: Wenn das Formular ein Bild als Hintergrund verwendet, blockiert das Panel-Steuerelement einen Teil des Hintergrundmusters. Um dieses Problem zu lösen, können wir das Panel-Steuerelement überhaupt nicht verwenden, sondern das Label-Steuerelement direkt auf dem Formular platzieren, den Transparent-Eigenschaftswert des Label-Steuerelements auf True setzen und diese Label-Steuerelemente dann direkt über den Timer steuern Kontrolle der Bewegung. Aus Platzgründen wird der Autor hier nicht näher darauf eingehen.