Dieser Artikel wurde manuell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. |
Übersetzung
Original
|
Timer-Klasse
Implementiert einen Zeitgeber, der ein Ereignis in benutzerdefinierten Intervallen auslöst. Dieser Zeitgeber ist für die Verwendung in Windows Forms-Anwendungen optimiert und muss in einem Fenster verwendet werden.
Assembly: System.Windows.Forms (in System.Windows.Forms.dll)
Der Timer-Typ macht die folgenden Member verfügbar.
| Name | Beschreibung | |
|---|---|---|
|
Timer() | Initialisiert eine neue Instanz der Timer-Klasse. |
|
Timer(IContainer) | Initialisiert eine neue Instanz der Timer-Klasse gemeinsam mit einem angegebenen Container. |
| Name | Beschreibung | |
|---|---|---|
|
CanRaiseEvents | Ruft einen Wert ab, der angibt, ob die Komponente ein Ereignis auslösen kann. (Von Component geerbt.) |
|
Container | Ruft den IContainer ab, der die Component enthält. (Von Component geerbt.) |
|
DesignMode | Ruft einen Wert ab, der angibt, ob sich Component gegenwärtig im Entwurfsmodus befindet. (Von Component geerbt.) |
|
Enabled | Ruft ab oder legt fest, ob der Zeitgeber ausgeführt wird. |
|
Events | Ruft die Liste der Ereignishandler ab, die dieser Component angefügt sind. (Von Component geerbt.) |
|
Interval | Ruft den Zeitraum in Millisekunden vor dem Auslösen des Tick-Ereignisses nach dem letzten Eintreten des Tick-Ereignisses ab oder legt diesen fest. |
|
Site | Ruft die ISite der Component ab oder legt diese fest. (Von Component geerbt.) |
|
Tag | Ruft eine beliebige Zeichenfolge ab, die einen Benutzerzustand darstellt, oder legt diese fest. |
| Name | Beschreibung | |
|---|---|---|
|
CreateObjRef | Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind. (Von MarshalByRefObject geerbt.) |
|
Dispose() | Gibt sämtliche von der Component verwendeten Ressourcen frei. (Von Component geerbt.) |
|
Dispose(Boolean) | Gibt außer den Speicherressourcen alle Ressourcen frei, die vom Zeitgeber verwendet werden. (Überschreibt Component.Dispose(Boolean).) |
|
Equals(Object) | Bestimmt, ob das angegebene Object und das aktuelle Object gleich sind. (Von Object geerbt.) |
|
Finalize | Gibt nicht verwaltete Ressourcen frei und führt andere Bereinigungsvorgänge durch, bevor die Component durch die Garbage Collection wieder zugänglich gemacht wird. (Von Component geerbt.) |
|
GetHashCode | Fungiert als Hashfunktion für einen bestimmten Typ. (Von Object geerbt.) |
|
GetLifetimeService | Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert. (Von MarshalByRefObject geerbt.) |
|
GetService | Gibt ein Objekt zurück, das einen von der Component oder von deren Container bereitgestellten Dienst darstellt. (Von Component geerbt.) |
|
GetType | Ruft den Type der aktuellen Instanz ab. (Von Object geerbt.) |
|
InitializeLifetimeService | Ruft ein Lebensdauerdienstobjekt ab, mit dem die Lebensdauerrichtlinien für diese Instanz gesteuert werden können. (Von MarshalByRefObject geerbt.) |
|
MemberwiseClone() | Erstellt eine flache Kopie des aktuellen Object. (Von Object geerbt.) |
|
MemberwiseClone(Boolean) | Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts. (Von MarshalByRefObject geerbt.) |
|
OnTick | Löst das Tick-Ereignis aus. |
|
Start | Startet den Zeitgeber. |
|
Stop | Hält den Zeitgeber an. |
|
ToString | Infrastruktur. Gibt eine Zeichenfolge zurück, die den Timer darstellt. (Überschreibt Component.ToString().) |
| Name | Beschreibung | |
|---|---|---|
|
Disposed | Tritt ein, wenn die Komponente durch einen Aufruf der Dispose-Methode freigegeben wird. (Von Component geerbt.) |
|
Tick | Tritt ein, wenn das angegebene Intervall für den Zeitgeber abgelaufen und der Zeitgeber aktiviert ist. |
Ein Timer wird verwendet, um ein Ereignis in benutzerdefinierten Intervallen auszulösen. Dieser Windows-Zeitgeber wurde für eine Singlethread-Umgebung entwickelt, in der Benutzeroberflächenthreads für die Verarbeitung verwendet werden. Hierfür muss im Benutzercode eine Nachrichtenverteilschleife für die Benutzeroberfläche verfügbar sein. Die Ausführung muss immer aus demselben Thread erfolgen, oder der Aufruf muss zu einem anderen Thread gemarshallt werden.
Verwenden Sie das Tick-Ereignis zusammen mit diesem Zeitgeber, um eine Abrufoperation durchzuführen oder einen Begrüßungsbildschirm für einen angegebenen Zeitraum einzublenden. Wenn die Enabled-Eigenschaft auf true festgelegt und die Interval-Eigenschaft größer als 0 (null) ist, wird das Tick-Ereignis in dem in der Interval-Eigenschaft festgelegten Intervall ausgelöst.
Diese Klasse stellt Methoden bereit, mit denen der Intervall festgelegt sowie der Zeitgeber gestartet und beendet wird.
Hinweis
|
|---|
|
Die Zeitgeberkomponente in Windows Forms ist Singlethreaded und auf eine Genauigkeit von 55 Millisekunden beschränkt. Wenn Sie einen Multithread-Zeitgeber mit größerer Genauigkeit benötigen, verwenden Sie die Timer-Klasse im System.Timers-Namespace. |
Im folgenden Beispiel wird ein einfacher Intervallzeitgeber implementiert, der alle fünf Sekunden einen Alarm auslöst. Beim Auslösen des Alarms wird in einer MessageBox angezeigt, wie oft der Alarm aktiviert wurde, und der Benutzer wird gefragt, ob der Zeitgeber weiterhin ausgeführt werden soll.
public class Class1 { static System.Windows.Forms.Timer myTimer = new System.Windows.Forms.Timer(); static int alarmCounter = 1; static bool exitFlag = false; // This is the method to run when the timer is raised. private static void TimerEventProcessor(Object myObject, EventArgs myEventArgs) { myTimer.Stop(); // Displays a message box asking whether to continue running the timer. if(MessageBox.Show("Continue running?", "Count is: " + alarmCounter, MessageBoxButtons.YesNo) == DialogResult.Yes) { // Restarts the timer and increments the counter. alarmCounter +=1; myTimer.Enabled = true; } else { // Stops the timer. exitFlag = true; } } public static int Main() { /* Adds the event and the event handler for the method that will process the timer event to the timer. */ myTimer.Tick += new EventHandler(TimerEventProcessor); // Sets the timer interval to 5 seconds. myTimer.Interval = 5000; myTimer.Start(); // Runs the timer, and raises the event. while(exitFlag == false) { // Processes all the events in the queue. Application.DoEvents(); } return 0; } }
Windows 7, Windows Vista SP1 oder höher, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core wird nicht unterstützt), Windows Server 2008 R2 (Server Core wird mit SP1 oder höher unterstützt), Windows Server 2003 SP2
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Hinweis