Also, auf Form2 macht eine Procedure folgendes:
Delphi-Quellcode:
[..]
if bsSkinSelectDirectoryDialog1.Execute
then
begin
choosenDirectory := bsSkinSelectDirectoryDialog1.Directory;
tempName := ListBox1.Items[ListBox1.ItemIndex];
Form1.exportTo.Caption := choosenDirectory;
tempNameDir := Form1.programmdirectory.Caption+'
..\webTemplates\'+tempName;
if func.CopyDir(tempNameDir, choosenDirectory) = True
then begin
[B]Form1.Button1.Click;[/B]
ShowMessage('
Export successfully!'); ShellExecute(
handle,'
open',PChar(choosenDirectory+'
\index.html'),
nil,
nil, SW_SHOWNORMAL);
Close;
end;
end;
[..]
Auf Form1 soll Button1 folgendes machen:
Delphi-Quellcode:
AdvMemo1.Lines.Clear;
AdvMemo1.Lines.LoadFromFile(exportTo.Caption+'index.html');
AdvMemo1.Lines.Text := StringReplace(AdvMemo1.Lines.Text,'$title', titleEdit.text,[rfReplaceAll]);
[..]
AdvMemo1.Lines.SaveToFile(exportTo.Caption+'index.html');
Ich habe das etwas gekürzt. Der StringReplace wird 20 mal mit verschiedenen Ersetzungssachen aufgerufen.
Form2 hat ListBox1 in welcher man verschiedene WebDesign Vorlagen wählen kann. Diese Vorlage wird dann in ein vom User gewählter Verzeichnis kopiert. Der Button1 auf Form1 bearbeitet die index.html aus dieser WebVorlage dann und passt sie wie gewünscht an.
Ich weiß, das ist kein hübscher Code und ich hätte es anders machen können - sicher auf 100 verschiedene Arten. Aber die WebExport Funktion in der Art wurde vom User erst nachträglich gewünscht. Es gab zwar vorher schon den WebExport (ist ne
DB Anwendung) aber nicht mit Vorlagenwahl und sowas.