Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.06.27;
Скачать: CL | DM;

Вниз

КАК быть?   Найти похожие ветки 

 
vitek ©   (2002-06-12 19:49) [0]

У меня вопрос такой: надо проверить запущена ли прога или нет

Если запущена, то показать её поверх других окон
Проблема возникает когда эта прога минимизирована
Ниже код который работает но потом эту прогу нельзя свернуть
Точнее можно только её сперва надо востановить кликнув на панели задач

КАК быть?

procedure TDialogForm.spbDictClick(Sender: TObject);
var hPrevWnd:HWND;
begin
hPrevWnd:=FindWindow("TForm1","form1");
// hPrevWnd:=FindNextWindow;
if hPrevWnd<>0 then
begin
////
// OpenIcon(hPrevWnd);
BringWindowToTop(hPrevWnd);
//setForegroundWindow(hPrevWnd);
//ShowWindow(hPrevWnd,SW_SHOWNA);
ShowWindow(hPrevWnd,SW_RESTORE);
end
else winExec(Pchar(ExtractFilePath(Application.Exename)+
"primer.exe"),SW_normal);
end;


 
Song ©   (2002-06-12 19:54) [1]

В FAQ есть.


 
vitek ©   (2002-06-12 20:32) [2]

>>В FAQ есть
Там тоже используется BringWindowToTop
Но это не работает когда приложение свернуто


 
Sasha9 ©   (2002-06-12 20:54) [3]

попробуй windows.setfocus(hPrevWnd)


 
YurijNT   (2002-06-12 22:38) [4]

А со списка форм переменной Screen не проще найти форму и сделать развернуть если надо и продвинуть на верх


 
vitek ©   (2002-06-14 16:42) [5]

>>Sasha9
>>попробуй windows.setfocus(hPrevWnd)

Пробовал не работает

>>YurijNT
>>А со списка форм переменной Screen не проще найти форму и сделать развернуть если надо и продвинуть на верх

Если имеется в виду screen.forms, то

screen.forms - Lists all the forms currently displayed in the application .


 
vitek ©   (2002-06-14 16:45) [6]

Всем в общем спасибо

Окончательный вариант

if IsWindowVisible(hPrevWnd)
then BringWindowToTop(hPrevWnd)
else ShowWindow(hPrevWnd,SW_RESTORE);

Если кто знает как все таки решить эту проблемку пишите



 
cyborg ©   (2002-06-14 20:18) [7]

В библиотеке Jedi Code Library есть такая функция, скачай и наслаждайся.
Модуль JclAppInst, функция JclAppInstances.CheckSingleInstance;
В главный файл проекта добавляешь только эти две строчки, и твоя прога будет себя находить и показывать в любом состоянии.



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

Текущий архив: 2002.06.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.011 c
7-89056
michael_B
2002-03-31 20:17
2002.06.27
Как спрятать(скрыть) все ярлыки на рабочем столе?


3-88772
Ron
2002-06-02 15:02
2002.06.27
TTable


1-88918
alex-ran
2002-06-14 14:16
2002.06.27
Работа с множествами


14-88999
Igorek
2002-05-23 17:02
2002.06.27
КОНКУРС!


3-88697
roadstar
2002-06-01 11:12
2002.06.27
TADOX