Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.04.15;
Скачать: [xml.tar.bz2];

Вниз

Активация предыдущей копии приложения   Найти похожие ветки 

 
Степан   (2007-03-24 21:47) [0]

Запретил одновременный запуск 2х и более копий моего приложения, но хочу, чтоб при запуске копии, активизировалось окно главной формы исходного экземпляра приложения. Поиск окна, открытие и активацию осуществляю так:

procedure ActivatePreviousInstance;
var
 PrevInstWnd: HWND;
begin
 PrevInstWnd := FindWindow("TMainForm", nil);
 if PrevInstWnd <> 0 then begin
   ShowWindow(PrevInstWnd, SW_SHOWNORMAL);
   ShowWindow(PrevInstWnd, SW_RESTORE);
   SetWindowPos(PrevInstWnd, HWND_TOP, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE or
     SWP_SHOWWINDOW);
   // SetForegroundWindow(PrevInstWnd);
 end;
end;


Класс главного окна: TMainForm. Дескриптор определяется правильно и окно отображается на экране, если свернуто... но поверх всех показываться не хочет (что SetWindowPos"ом, что SetForegroundWindow"ом). Кто-нибудь сталкивался с этим? что посоветуете?


 
S@shka ©   (2007-03-24 22:26) [1]

FormStyle := fsStayOnTop;


 
Leonid Troyanovsky ©   (2007-03-24 22:43) [2]


> Степан   (24.03.07 21:47)  

>  что посоветуете?

http://groups.google.com/group/fido7.su.win32.prog/msg/1984ffcf8ae2b539

--
Regards, LVT.


 
Johnmen ©   (2007-03-25 00:11) [3]

...
BringWindowToTop(PrevInstWnd);
SetForegroundWindow(PrevInstWnd);
...


 
Степан   (2007-03-25 11:47) [4]

Спасибо, буду пробовать



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

Форум: "Начинающим";
Текущий архив: 2007.04.15;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.114 c
3-1169626238
r2d2
2007-01-24 11:10
2007.04.15
ADOTable и внесения изменений в БД


2-1174946193
Fluxay
2007-03-27 01:56
2007.04.15
как вычленить названия методов и классов


2-1173912636
Vulko
2007-03-15 01:50
2007.04.15
Как сохранить всю форму с содержимым в графич. файл?


15-1174288578
novoalex
2007-03-19 10:16
2007.04.15
Сабж. Про приборы учета.


2-1174637677
merko
2007-03-23 11:14
2007.04.15
Как посчитать дату?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский