Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi javascript + delphi (https://www.delphipraxis.net/12158-javascript-delphi.html)

horst 21. Nov 2003 19:42


javascript + delphi
 
wer kann mir zeigen wie ich dieses javascript nach delphi zu übersetzen kann?
es geht um das erzeugen eines blindtextes (LOREM BLA BLUBB), der je nachdem wieviele zeichen gewählt wurden, erzeugt wird.

Code:
<!-- 
var e = '';      
function h() { 
e = document.a.b.value;
var chars = document.a.c.value;
if (chars == ''){ 
chars = 543;

var f = e;
while (e.length < chars){ 
e += f;

var g = e.substring(0, chars);
document.forms[0].d.value=g;

//-->

grüße horst ;)

Phoenix 21. Nov 2003 21:10

Re: javascript + delphi
 
Das was aus document im Script eingelesen wird kommt bei eingabe und anzahl rein, die funktion liefert dann den text zurück, der ins dokument zurückgeschrieben wird.

Delphi-Quellcode:
function Lore_Ipsum(eingabe: string; anzahl: integer): string;
var
   e,f: string;
   i,chars: integer;
begin
   // Werte holen (passiert im JavaScript aus document...)
   e := eingabe;
   chars := anzahl;
   
   // anzahl ggf. korrigieren
   if chars = 0 then
      chars := 543;
   
   // hilfsvariable hernehmen
   f := e;

   // hilfsvariable füllen...
   while length(f) < chars do
      f := f + e;

   // wir könnten länger sein als chars, also kürzen und zurückgeben
   result := Copy(f, 1, chars);
end;

Phoenix 21. Nov 2003 21:13

Re: javascript + delphi
 
Das ist übrigens der korrekte ganze Text:

Zitat:

Lore ipsum dolor sit amet, consectetuer adipiscing elit, sed diemnonummy nibh euismod tincidunt ut lacreet dolore magna aliguamerat volutpat.
Ut wisis enim ad minim veniam, quis nostrud exercitution ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo. Feugait wis eugue er sendit vullandigna faccum nostionumsan,volor ing et nullaorpero odionummy nit lorper acipsum ver si exerautpat euismod.

Sharky 22. Nov 2003 07:06

Re: javascript + delphi
 
Hai horst,
ich verschiebe den Beitrag mal nach "Programmieren allgemein".

horst 22. Nov 2003 08:03

Re: javascript + delphi
 
hallo
dankeschön für die hilfe...
was bedeutet
Delphi-Quellcode:
chars := 543;
und warum gerade 543?

grüße horst

choose 22. Nov 2003 10:41

Re: javascript + delphi
 
Zitat:

Zitat von horst
was bedeutet
Delphi-Quellcode:
chars := 543;
und warum gerade 543?

Hallo horst,

ich denke, dass hier etwas ähnliches wie ein "optionaler Parameter" umgesetzt worden ist: Wenn keine Anzahl von Zeichen angegeben wurde, wird ein Standardwert (hier: 543) verwendet. Dies könntest Du auch direkt mit der Delphi Language lösen, zB
Delphi-Quellcode:
function LoreIpsum(const AEingabe: string;
  const AZeichen: Integer = 543): string;
var
  iZeichen: Integer;
begin
  Assert(Length(AEingabe)>0);

  //AZeichen <= 0 wird korrekt verarbeitet
  SetLength(Result, AZeichen);
  for iZeichen:= 0 to Pred(AZeichen) do
    Result[iZeichen+1]:= AEingabe[(iZeichen) mod Length(AEingabe)+1];
end;

horst 7. Dez 2003 00:44

Re: javascript + delphi
 
irgendwie zu spät gesehen...danke!
aber warum kann der wert nicht 0 sein?

choose 7. Dez 2003 12:05

Re: javascript + delphi
 
Hallo Horst,

er spricht nichst dagegen, die Funktion auch mit 0 aufzurufen. Das JS-Snippet schien nur die übliche Lösung für optionale Parameter zu implementieren, die es in dieser Sprache nicht explizit gibt, wie in Delphi.
Ich wollte lediglich darstellen, wie Du die Delphi Language einsetzen kannst, um dasselbe zu erreichen und dabei deutlich machst, was gemeint ist...

sakura 7. Dez 2003 12:35

Re: javascript + delphi
 
Ich schubse es mal nach Sonstiges, hat ja letztenendes was mit Delphi zu tun ;-)

...:cat:...

horst 7. Dez 2003 22:19

Re: javascript + delphi
 
ok...habs nun verstanden, danke ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:59 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