Einzelnen Beitrag anzeigen

Satyr

Registriert seit: 8. Feb 2012
Ort: Essen
305 Beiträge
 
Delphi 10.4 Sydney
 
#19

AW: Einen Button Click Event von anderem Formular aufrufen?

  Alt 16. Mär 2012, 18:15
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.
  Mit Zitat antworten Zitat