Как из FoxPro развернуть приложение свернутое в системный трей | |
---|---|
ZenTigra Сообщений: 514 Дата регистрации: 03.12.2004 |
Задача била в необходимости предотвращения повторного запуск программы, которая висит в systray,
С ней я справился, все работает. Но для пользователя не удобно, он жмет на ярлык, программа ругается и закрывается... и все, нужно еще нажать на значок в systray-е. Вот теперь ломаю голову, как активировать свернутую программу? |
Re: Как из FoxPro развернуть приложение свернутое в системный трей | |
---|---|
Аспид Сообщений: 3475 Откуда: Москва Дата регистрации: 01.04.2005 |
Выдрал, даже не помню что где)
|
Re: Как из FoxPro развернуть приложение свернутое в системный трей | |
---|---|
Alsim Сообщений: 3636 Откуда: Екатеринбург Дата регистрации: 17.11.2004 |
Закрепить ярлык "на панели задач" + конечно отвергать повторный запуск. На Win7 и Win10 работает. спасибо, попробую |
Re: Как из FoxPro развернуть приложение свернутое в системный трей | |
---|---|
Ydin Сообщений: 7648 Откуда: Киев Дата регистрации: 16.12.2005 |
У меня это есть. Но написать тут не легко. Попытаюсь
Цитата: Это ключевая ф-я, она работает. Но лет 20 назад написана и не помню деталей Теперь, где она вызывается. На старте запуска lcMagicWord=CURDIR() IF RIGHT(lcMagicWord,1)='\' lcMagicWord = LEFT(lcMagicWord,LEN(lcMagicWord)-1) ENDIF ... lnPos=RAT('\',lcMagicWord) IF lnPos>0 lcMagicWord=SUBSTR(lcMagicWord,lnPos+1) ENDIF lcMagicWord=StrToLong(CHRTRAN(lcMagicWord,'\','')) llQuit=.F. DO CASE CASE lnInstances='0' llQuit= FindInstance(lcMagicWord) CASE lnInstances='1' AND FindInstance(lcMagicWord,.T.) lcMess = 'Запустить еще один экземпляр приложения?' llQuit = warn(lcMess,,30,2,2)=2 && Это вопрос 1-да, 2-нет IF llQuit = .T. =FindInstance(lcMagicWord) ENDIF ENDCASE Чувствую, что может не понятно... У меня на запуске приложения (Exe) может передаваться параметр (или не передаваться и тогда он "0") Это сколько экземпляров допустимо Сейчас устал. Попробуйте, но это у меня работает лет 20. Сложно тут, я кусками вытаскивал |
Re: Как из FoxPro развернуть приложение свернутое в системный трей | |
---|---|
Каратаев Сообщений: 3977 Откуда: Алматы Дата регистрации: 04.12.2001 |
На уровне класса реализовано так:
Метод класса Isrun
------------------ Никогда не бывает настолько плохо, чтобы не могло быть еще хуже. |
Re: Как из FoxPro развернуть приложение свернутое в системный трей | |
---|---|
ZenTigra Сообщений: 514 Дата регистрации: 03.12.2004 |
Этой теме уже больше 4 лети, тогда я не смог решить эту проблему,
я вновь к ней вернулся, помогите, пожалуйста, никак не могу ее решить. Уже реализовано, запрет на повторный запуск программы, и активация уже запущенной программы, которая висит в системной трее, Окно активируеться, но оно прозрачное, контролы прорисовываються только при попадании в них курсора. Когда окно свернутое, все окей, програма активирується, из системного трея - нет, возможно из-за того, что при сворачивании я ставлю _Screen.Visible=.F.
|
Re: Как из FoxPro развернуть приложение свернутое в системный трей | |
---|---|
ZenTigra Сообщений: 514 Дата регистрации: 03.12.2004 |
Исправлено 1 раз(а). Последнее : ZenTigra, 01.03.23 17:07 |
Re: Как из FoxPro развернуть приложение свернутое в системный трей | |
---|---|
_vit Автор Сообщений: 5175 Дата регистрации: 29.07.2002 |
Попробуй послать окну WM_SYSCOMMAND, SC_RESTORE
Исправлено 1 раз(а). Последнее : _vit, 05.03.23 11:17 |
© 2000-2024 Fox Club  |