In meinem AlexOpenfileFrame suche und klicke ich eine bestimmte Datei, in diesem Fall eine PDF, und gelange
dann über einen Event hierher, um hier in einem Tabsheet eine Form zu erzeugen:
Delphi-Quellcode:
procedure TOfficerAlexMain.DoTextSelectionEvent(Sender: TObject; const ATextSelection: String);
var LFilename: String;
begin
FTextSelection := ATextSelection;
if ExtractFileExt(ATextSelection) = AnsiLowerCase('.pdf') then
begin
LFilename := ATextSelection;
AlexExternAppForm := TAlexExternAppForm.Create(Self);
AlexExternAppForm.FFilename := LFilename;
AlexExternAppForm.Parent := OfficerAlexMain.tbsAppParent;
AlexExternAppForm.ExecuteShell;
end;
end;
In AlexExternAppForm wird nach dem Create der folgende Code ausgeführt:
Delphi-Quellcode:
procedure TAlexExternAppForm.ExecuteShell();
begin
if ShellExecute(AlexExternAppForm.Handle,
'open',
PChar(FFilename),
nil, nil, SW_NORMAL) <= 32 then
ShowMessage('Es ist ein Fehler aufgetreten');
end;
FFileName enthält hier den Pfad der Datei, die ich in meinem AlexOpenfileFrame angeklickt habe.
Das Resultat ist allerdings nicht beabsichtigt:
Auf dem vorgesehenen Tabsheet wird die gewünschte Form erstellt, der Name steht in der Symbolleiste, aber die Form ist leer.
Die gewünschte PDF wird in der Standard-App dargestellt, allerdings ohne sich in der vorgesehenen Form zu befinden.
(noch nicht getestet: Völlig frei auch von der Mainform.
Was mache ich falsch?
Gruss
Delbor