Вниз
Скачать: CL | DM;

Активизация формы после выполнения внешней программы   Найти похожие ветки 

← →
Федина Лидия   (2002-06-27 16:27) [0]

Я запускаю стандартную программу Windows - калькулятор из своего приложения по кнопке. Если, поработав в калькуляторе, я его закрываю - то все нормально, моя форма активна. Если, после запуска калькулятора, я его сверну в иконку, затем разверну, а потом уже закрою, то мое приложение не активно, пока я не щелкну кнопкой мыши. Можно ли что-то сделать в этой ситуации?
Заранее благодарна за ответ.


← →
Volj ©   (2002-06-27 16:28) [1]

SetFocus или SetForegroundWindow


← →
kull ©   (2002-06-27 17:40) [2]


> SetFocus или SetForegroundWindow

Кто фокус ставить будет, калькулятор что ли?


← →
Volj ©   (2002-06-27 17:55) [3]

procedure TForm1.Button1Click(Sender: TObject);
begin
WindowState := wsMinimized;
fileExec("calc", SW_SHOW, True);
WindowState := wsNormal;
SetForegroundWindow(Handle);
end;

function fileExec(const aCmdLine: String; SW_MODE:Word; aWait: Boolean): Boolean;
var
StartupInfo : TStartupInfo;
ProcessInfo : TProcessInformation;
begin
FillChar(StartupInfo, SizeOf(TStartupInfo), 0);
with StartupInfo do
begin
cb:= SizeOf(TStartupInfo);
dwFlags:= STARTF_USESHOWWINDOW or STARTF_FORCEONFEEDBACK;
wShowWindow:= SW_MODE;
end;
Result := CreateProcess(nil,PChar(aCmdLine), nil, nil, False,
NORMAL_PRIORITY_CLASS, nil, nil, StartupInfo, ProcessInfo);
if aWait then
if Result then
begin
WaitForInputIdle(ProcessInfo.hProcess, INFINITE);
WaitForSingleObject(ProcessInfo.hProcess, INFINITE);
end;
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
7-47817
Sega
2002-04-17 09:12
2002.07.15
Hibernate


7-47843
DiGiTaL
2002-04-20 18:10
2002.07.15
Как поместить свою программу в Виндовую автозагрузку?


1-47447
Azo
2002-07-03 12:30
2002.07.15
Преобразование таблицы.


3-47105
jaric
2002-06-20 19:34
2002.07.15
Как переиндексировать dbf таблицу?


3-47104
ДимкаН
2002-06-21 15:14
2002.07.15
Help! Проблемы с кодировкой :(




   Наверх