![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Меню на второй форме - потеря фокуса главного меню [Lazarus, KOLCE, WindowsCE]
blackman2003 © (2008-11-03 13:35:00)Ситуация такая: есть две формы
1я - основая, несколько элементов и MainMenu
2я - вызывается как модальная, Visible=false и тоже имеет свое MainMenu
При запуске программы под WM5, WM2003SP первая форма отображается замечательно, за исключением того, что MainMenu у нее почему-то от второй формы. Если тапнуть стилусом в любое место первой формы - меню восстанавливается. На смартфонах такой фокус естественно не проходит. Попытки стделать затычки с помощью DoSetFocus либо Focused:=true не помогают.
Собственно вопрос: что это такое и как боротся? Никто не сталкивался?
Vladimir Kladov (2008-11-04 18:10:00) [1]Посмотрите на TMenu.RedrawFormMenuBar, функцию API DrawMenuBar, может поможет.
blackman2003 (2008-11-04 17:45:00) [2]Используется. Именно так все и делается.
При создании-уничтожении динамическом проблем действительно нет. Но вот при просто прятании меню модальной формы все еще перекрывает меню основной.
Yury Sidorov (2008-11-04 17:02:00) [3]А TKOLApplet используется? Если нет, то нужно использовать.
Все формы кроме главной должны быть невидимы при запуске программы. Все формы нужно вызывать как модальные и потом вручную прятять.
Я, например, все модальные формы создаю динамически перед показом и уничтожаю после показа. В этом случае проблем точно никаких нет.
blackman2003 (2008-11-03 14:54:00) [4]Проблему временно решил динамическим созданием второй и последующих форм.
Собственно тут http://www.freepascal.ru/forum/viewtopic.php?f=6&t=2810&st=0&sk=t&sd=a&start=15одна из проблем аналогична, но ответ так и не найден.