Einzelnen Beitrag anzeigen

joehd

Registriert seit: 8. Okt 2008
Ort: Heidelberg
61 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

Tastatur Focus in meine Anwendung nach Shelexecute und Wait auf Beenden

  Alt 20. Mär 2020, 10:33
Hallo !
ich habe eine Anwendung geschrieben die unter anderem eine weitere Anwendung aufruft wartet bis diese geschlossen ist und dann wieder in den Vordergrund kommt.
Das klappt aber den Tastatur Focus bekommt sie nicht warum ?
Ich habe schon einiges probiert
kann mir da jemand helfen ? Habe auch schon gesucht


Delphi-Quellcode:
  
  Form1.Memo1.SetFocus; // Focus in das Memofeld 1
  Form1.FormStyle := fsNormal; // Formstyle auf Noormal hatte es auch schon on Top
   application.Minimize; // Application minimieren
 try
  if (Fileexists(trim(mydata.Start_Minilis_A) )) and (mydata.wait = 'FALSE' ) then // Wenn die Exe existiert dann ausführen ohne Wait
   ShellExecute(0,'open',pchar(Trim(mydata.Start_Minilis_A)),nil,nil,SW_SHOWNORMAL) else
  if (Fileexists(trim(mydata.Start_Minilis_A) )) and (mydata.wait = 'TRUE' ) then // Wenn die Exe existiert dann ausführen mit Wait
     Form1.ShellExecAndWait(pchar(Trim(mydata.Start_Minilis_A)), '', SW_SHOWNORMAL) else
     Showmessage('Die Datei : ' + Trim(mydata.Start_Minilis_A) + ' ist nicht vorhanden !');
  finally
   Show(); // Zeige das Fenster wieder ..
   if Windowstate = WsMinimized then Windowstate := wsnormal; // Windows State wieder auf Normal
   Application.BringToFront; // Bringe Application nach vorne
   // Form1.FormStyle := fsStayOnTop;
   Form1.SetFocus; // TEST
   Memo1.SetFocus; // TEST
   Setforegroundwindow(application.Handle); // Test
   end;
joe
immer wenn ich was suche finde ich es hier komisch oder ?
Arbeite mit D3 D5 D2007 DXE Prof

Geändert von Luckie (20. Mär 2020 um 13:46 Uhr)
  Mit Zitat antworten Zitat