Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Форма с вечным фокусом [D7, WinXP]


BlackSun ©   (2004-07-21 13:17:00) 

Подскажите, пожалуйста, как сделать, чтобы форма не могла потерять фокус?


Sandman25   (2004-07-22 08:49:00) [1]

> а потом убрать ее, когда понадобится.

В таком случае Вы должны были открыть новую ветку с вопросом "Как программно закрыть модальную форму", получить в ней ответ: "Присвоить [Form2.]ModalResult := mrOk" и преспокойно использовать ShowModal.

[12] Sun bittern ©   (22.07.04 07:50)

Ну, это вряд ли :)


Sun bittern   (2004-07-22 08:17:00) [2]

Думкин ©   (22.07.04 07:58) [14]

Есть подозрение, автор ветки пользователей на юзание мышей переводит. Типа вот видите, фокус с элемнтов упрвления пропадает и клавишей Таб уже не пробежаться поним, за то у меня есть рульная мышка, благадоря которой можно успеть кликнуть по нужному контролу :0)


Думкин   (2004-07-22 07:58:00) [3]

> [13] Sun bittern ©   (22.07.04 07:53)

А в этом и есть фокус. Форма немодальная, но как модальная, но модальной не является. Фокус покус. Пора в потрепаться, если разъяснений не будет. Есть одно подозрение, но пусть автор сам разъяснит.
А то подозрение тут уже обсуждалось.


Sun bittern   (2004-07-22 07:53:00) [4]

BlackSun   (22.07.04 06:47) [10]

Сразу напрашивается вопрос, что мы подразумеваем под фокусом?


Sun bittern   (2004-07-22 07:50:00) [5]

Sandman25 ©   (21.07.04 15:34) [5]

Придется тебя исключить из группы телепатов :))))


Думкин   (2004-07-22 06:57:00) [6]

> [10] BlackSun   (22.07.04 06:47)
> О существовании Showmodal я знаю, но если я вызову ShowModal,
> то пока форма не закроется, я не смогу ничего дальше делать.
> А мне надо просто показать форму, чтобы она была активной
> всегда, а потом убрать ее, когда понадобится.

А теперь прочитай этот бред вновь. И чем же твоя форма отличается от модальной? Чем? Конкретно, по пунктам.


BlackSun   (2004-07-22 06:47:00) [7]

О существовании Showmodal я знаю, но если я вызову ShowModal, то пока форма не закроется, я не смогу ничего дальше делать. А мне надо просто показать форму, чтобы она была активной всегда, а потом убрать ее, когда понадобится. Спорить о смысле всего этого думаю не стоит, просто помогите решить проблему. При fsStayOnTop действительно теряется фокус, так что это не подходит. Буду пробовать с WM_KILLFOCUS и Deactivate


Sandman25   (2004-07-21 15:44:00) [8]

[8] clickmaker ©   (21.07.04 15:41)

Тогда теряется фокус. Хотя кто знает этих авторов ветки :)


clickmaker   (2004-07-21 15:41:00) [9]


> Sandman25 ©   (21.07.04 15:34) [5]
> Это называется Form.ShowModal

или fsStayOnTop :)


Sandman25   (2004-07-21 15:40:00) [10]

[6] Sun bittern ©   (21.07.04 15:39)

Я уже давно в ней ИМХО :)


Sun bittern   (2004-07-21 15:39:00) [11]

Sandman25 ©   (21.07.04 15:34) [5]

Щас наверно выесниться что это не то, а если то, то Sandman25 поздравляем с пополнением в группу телепатов :)


Sandman25   (2004-07-21 15:34:00) [12]

Это называется Form.ShowModal


Sun bittern   (2004-07-21 15:33:00) [13]

>> то надо одну сделать постоянно под фокусом.

Если одна постоянно под фокусом, то как тогда перекличиться на другие контролы а?

Ну если охота поизобретать, то:
OnDeactivate
WM_KILLFOCUS
SetFocus


BlackSun   (2004-07-21 14:07:00) [14]

Sun bittern, я же не говорю, чтобы из моего приложения нельзя было переключиться в другое, я имею ввиду, что если у меня несколько форм в приложении, то надо одну сделать постоянно под фокусом.
А вариант с таймером как-то некрасиво... Вроде у формы должно быть событие, связанное с потерей фокуса, кто-нибудь подскажет?


ekap   (2004-07-21 13:37:00) [15]

В таймере интервал 1.
и в нём
form1.focus;


Sun bittern   (2004-07-21 13:34:00) [16]

Нельзя!
И кто таким ПО будет пользоваться? Как на другие приложения переключаться?


Наверх

Титульная страница Поиск, карта сайта Написать письмо