Schönen guten Morgen,
ich habe folgendes Problem:
Ich starte über runshell ein Programm.
Dieses wird zum Programmende "versteckt", also in die Taskleiste gelegt.
Mein aufrufendes Programm steht wieder im Vordergrund.
Der Tastaturfocus jedoch noch im Fremdprogramm.
Gibt's hier einen Trick?
Gruß Stefan
Focus in eigenes Programm "zurückholen"
Moderator: Moderatoren
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Focus in eigenes Programm "zurückholen"
eventuell mit SetAppFocus() auf ein vorhandenes Control verweisen
Gruß
Hubert
Hubert
- mini990
- 1000 working lines a day
- Beiträge: 592
- Registriert: Sa, 28. Jan 2006 9:44
- Wohnort: Berg-Richtheim bei Neumarkt i.d.Opf.
- Danksagung erhalten: 1 Mal
Re: Focus in eigenes Programm "zurückholen"
Schon probiert. geht net.
Ebenso :tofront und was ich noch alles im Forum so gefunden habe.
Bis auf die Funktion von pablo. Die verstehe ich nicht ganz...
Gruß Stefan
Ebenso :tofront und was ich noch alles im Forum so gefunden habe.
Bis auf die Funktion von pablo. Die verstehe ich nicht ganz...
Gruß Stefan
Re: Focus in eigenes Programm "zurückholen"
RunShell( cPar , cPrg , .T. , .T. ) dann sollte das gestartete Programm von selbst im Hintergrund verschwinden und Dein aufrufendes Programm im Vordergrund sein - mit Focus.
Du kannst ja noch probieren:
RunShell(...)
ShowWindow( nHWND , SW_SHOWNORMAL )
SetForegroundWindow( nHWND )
wobei nHWND der Handle des aufrufenden Fensters ist, z.B.
nHWND := oCrt:GetHWND()