Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi WebBrowser: Dateien durchschalten (https://www.delphipraxis.net/99407-webbrowser-dateien-durchschalten.html)

Svenkan 11. Sep 2007 20:51


WebBrowser: Dateien durchschalten
 
Hallo Leute,
ich bekomme meine Schaltung leider nicht richtig funktionierend hin.

1. Fall: plannr wird um 1 hochgesetzt und der nächste Plan angezeigt -> kein Problem
2. Fall: nachdem die Pläne durchgelaufen sind, sollen die Meldungen angezeigt werden. -> kein Problem
3. Fall: wenn die Meldungen gerade angezeigt werden oder nicht vorhanden sind, soll auf den nächsten Tag geschaltet werden. Und genau da liegen meine Problem: entweder geht er nur zurück auf den letzten Plan des aktuellen Tages oder er bleibt immer auf der Meldungsseite. Und bei meinen gazen Spielereien ist ziemlich viel Müll bei rausgekommen. Also nicht allzu sauer über den Code sein..

Delphi-Quellcode:
 plannr:=plannr+1;

 if FileExists(ExtractFilePath(ParamStr(0))+'\monitor\vplan_'+dayname+'_'+IntToStr(plannr)+'.htm') then begin
  VPlan.Navigate(ExtractFilePath(ParamStr(0))+'monitor\vplan_'+dayname+'_'+IntToStr(plannr)+'.htm');
  Label6.Caption:=IntToStr(plannr);
  Label7.Caption:=VPlan.OleObject.Document.URL;
 end
 else if (FileExists(ExtractFilePath(ParamStr(0))+'\monitor\vplan_'+dayname+'_meldungen.htm')) AND NOT ((VPlan.LocationUrl='file://'+ExtractFilePath(ParamStr(0))+'monitor\vplan_'+dayname+'_'+IntToStr(plannr-1)+'.htm')) then begin
  plannr:=plannr-1;
  VPlan.Navigate(ExtractFilePath(ParamStr(0))+'monitor\vplan_'+dayname+'_meldungen.htm');
  Label6.Caption:='Meldungen';
   Label7.Caption:=VPlan.OleObject.Document.URL;
   Label8.Caption:='file://'+ExtractFilePath(ParamStr(0))+'monitor\vplan_'+dayname+'_'+IntToStr(plannr)+'.htm';
 end
 else if NOT (FileExists(ExtractFilePath(ParamStr(0))+'\monitor\vplan_'+dayname+'_meldungen.htm')
  OR (VPlan.LocationUrl='file://'+ExtractFilePath(ParamStr(0))+'monitor\vplan_'+dayname+'_mitteilungen.htm')
  OR (FileExists(ExtractFilePath(ParamStr(0))+'\monitor\vplan_'+dayname+'_meldungen.htm'))) then begin

  if dayname=ShortDayNames[DayOfWeek(Today)] then begin
   dayname:=ShortDayNames[DayOfWeek(tomorrow)];
   Label4.Caption:=LongDayNames[DayOfWeek(tomorrow)]+', den '+DateToStr(tomorrow);
  end
  else begin
   dayname:=ShortDayNames[DayOfWeek(today)];
   Label4.Caption:=LongDayNames[DayOfWeek(today)]+', den '+DateToStr(today);
  end;

  plannr:=1;
  Label6.Caption:=IntToStr(plannr);
  VPlan.Navigate(ExtractFilePath(ParamStr(0))+'monitor\vplan_'+dayname+'_'+IntToStr(plannr)+'.htm');
 end;

Svenkan 13. Sep 2007 14:55

Re: WebBrowser: Dateien durchschalten
 
Keiner ne Ahnung? :(

mkinzler 13. Sep 2007 15:05

Re: WebBrowser: Dateien durchschalten
 
Vielleicht versteht niemand was du willst

Svenkan 13. Sep 2007 15:34

Re: WebBrowser: Dateien durchschalten
 
Also..
Ich lege die Plandateien im Format z.B. vplan_Mo_1.htm an.
Mo natürlich der Tag, 1 gibt an, die wie vielte Seite.
Alle X Sekunden wird nun der nächste Plan aufgerufen.
Diese bspw. 1 ist im Programm in der Variable plannr.
Wenn der nächste Plan aufgerufen werden soll, wird plannr um 1 erhöht.
Gibt es keinen Plan mit der nächsthöheren Nummer, wird geprüft, ob die Datei vplan_Mo_meldungen.htm existiert.
Wenn ja -> aufrufen.
Wenn nicht -> dayname:=tomorrow bzw dayname:=today (je nachdem, welcher Tag gerade aufgerufen wurde).
Das Problem: wenn ich die vplan_Mo_meldungen.htm aufrufe, soll dann als nächstes plannr wieder auf 1 gesetzt und der nächste Tag aufgerufen werden. Und genau liegt das Problem: er hängt sich bei den Meldungen auf und ruft immer wieder diese Datei ab.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:48 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz