Главная страница
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.013 c
1-88914
3asys
2002-06-14 00:11
2002.06.27
Алгоритм обхода дерева


1-88845
PTE
2002-06-17 15:37
2002.06.27
что означает это предупреждение?


1-88857
eviruswork
2002-06-14 13:45
2002.06.27
Невидимая форма


14-88990
Lord Warlock
2002-05-24 15:03
2002.06.27
Интерфейс и девушка!


6-88973
cok
2002-04-17 21:32
2002.06.27
Опять сокеты (для локалок)