'loha Folks,
folgende Prozedur macht Probleme:
Delphi-Quellcode:
{** This procedure is used to follow the links in the navigation menu}
procedure TfrmNavigationMenu.Move(AFormClass: TIWAppFormClass; AFormName: String);
begin
{Begin page load}
if WebApplication.FindComponent(AFormName) <> nil then
begin
TIWAppForm(WebApplication.FindComponent(AFormName)).Show;
end else
begin
AFormClass.Create(WebApplication).Show;
end;
Release;
{End page load}
end;
Die Prozedur macht nichts anderes, als nachzuschauen, ob die Seite mit dem entsprechenden übergebenen Namen bereits vorhanden ist - also bereits von einem User bereits besucht wurde - und die Seite dann anzuzeigen, oder - falls der User noch nicht auf die Seite zugegriffen hat - diese zu kreieren.
Nach einem Login ist natürlich stets der zweite Fall zutreffend, die Seite muss also kreiert werden. Und hier taucht das Problem auf. Folgende Fehlermeldung erscheint:
Ungültige Zeigeroperation.
Nun gut, dies liegt wohl an dem ersten if Statement. Denn die Seite, nach welcher gesucht wird, existiert noch nicht wirklich. Nachdem die Fehlermeldung weggeklickt wird, verhält sich die Applikation auch wie gewollt, das heisst, die gewünschte Seite taucht auf.
Jetzt ist es so, dass auf manchen Seiten Threads laufen. Diese Threads sollen, falls der User vor deren Ablauf die Seite wechselt und wieder auf die Seite mit dem laufenden Thread zurückkehrt, natürlich wieder aufgegriffen werden (der Thread läuft im Hintergrund weiter, auch wenn der User die Seite verlässt).
Die Fehlermeldung möchte ich nun eliminieren, da diese Überflüssig ist, weiss aber nicht wie man dies anstellt.
Grüsse
hirnstroem