![]() |
Re: Klasse soll Anwendung nur bei best. Änderung benachricht
Hab mich ein wenig zu früh gefreut...
Das Programm läuft jetzt zwar aber irgendwie klappt das mit dem Timer noch nicht richtig. Wenn ich den Timer anschalte kommen sofort mit jedem Takt Nachrichtenfenster auch wenn noch keine Änderung gemacht wurde. Wenn ich auf den Button Status ändern klicke dann kommt wie gewünscht das Nachrichtenfenster. War das bei dir auch so? |
Re: Klasse soll Anwendung nur bei best. Änderung benachricht
Du rufst ja im Timer auch immer OnChange auf, ohne auf Änderung zu prüfen.
|
Re: Klasse soll Anwendung nur bei best. Änderung benachricht
Achso ich dachte das passiert automatisch :)
Muss ich jetzt den Status mit einer Hilfsvariable zwischenspeichern um vergleichen zu können oder wie macht man das am elegantesten? |
Re: Klasse soll Anwendung nur bei best. Änderung benachricht
Wozu brauchst Du eigentlich den Timer? Wenn sich der Status ändert, bekommst Du es doch mit.
|
Re: Klasse soll Anwendung nur bei best. Änderung benachricht
Leider nicht denn der Status ist ein Flag in der Windows WMI und kann sich jederzeit ändern. Der Status wird also über diese Funktion abgefragt und sollte sich was ändern soll er das der Anwendung melden.
|
Re: Klasse soll Anwendung nur bei best. Änderung benachricht
Dann wäre es IMO wirklich besser, sich den alten Status zu merken und zu vergleichen.
|
Re: Klasse soll Anwendung nur bei best. Änderung benachricht
Zitat:
Delphi-Quellcode:
angegeben werden oder im Hauptform
OnChange_Proc = procedure (Parameter1 : string, Parameter2 : Boolean) of object;
Delphi-Quellcode:
oder gar beides?
procedure DoChange(Parameter1 : string, Parameter2 : Boolean)
++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++ "Nur" fürs Verständnis....
Delphi-Quellcode:
Wie genau funktioniert das mit dem Assigned
procedure TMyClass.OnChange;
begin if Assigned(FOnChange) then FOnChange; end; procedure TMyClass.setStatus(value: Boolean); begin FStatus := value; if Assigned(FOnChange) then FOnChange; end; |
Re: Klasse soll Anwendung nur bei best. Änderung benachricht
Zitat:
|
Re: Klasse soll Anwendung nur bei best. Änderung benachricht
Woran lag es? würde mich interessieren? OnClick nicht gebunden gewesen?
|
Re: Klasse soll Anwendung nur bei best. Änderung benachricht
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo spaxxn, hatte es gestern zum laufen gebracht als ich einfach vor dem Kompilieren die Buttons durch doppelklick auf dem Formular eingebunden habe (glaube das geht doch so, oder?)
Leider verstehe jetzt gar nichts mehr. Wollte nochmal ein neues Projekt starten und jetzt kommt wieder eine Fehlermeldung sobald ich einen der beiden Button drücke: Exception-Klasse EAccessViolation mit Meldung 'Zugriffsverletzung bei Adresse 0045C365 in Modul 'Project1.exe'. Lesen von Adresse 00000004'. Prozess Project1.exe (1472) Was hab ich jetzt schon wieder falsch gemacht? Kannst du nochmal kurz versuchen ob die beiden Units 1:1 bei dir Laufen? Arbeite nämlich auf zwei unterschiedlichen Rechner und will ausschliessen dass es am Code liegt. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:32 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz