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

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

MDI формы [D7, WinXP]


MZ ©   (2007-04-02 08:59:00) 

Как проверить создана или нет MDI форма, и если создана - сделать ее активной, если нет создать...


MZ   (2007-04-02 11:42:00) [1]


> Объясни, зачем нужно MDI-приложение с одной-единственной
> MDIChild-формой ?

MDI форма не одна. Должно бать не mjktt одной MDI-формы одного класса. Уже разобрался. Всем спасибо. Особенно Рамиль.


Плохиш   (2007-04-02 10:57:00) [2]


> MZ   (02.04.07 10:05) [4]
>
> > Проверять на nil бесполезно. особенно при таком создании
> > > else TMyForm.Create(OwnerForm)
>
> и какой выход?

Присваивать переменной, которую проверяешь, ссылку на форму...


Сергей М.   (2007-04-02 10:28:00) [3]


> MZ


Объясни, зачем нужно MDI-приложение с одной-единственной MDIChild-формой ?


Рамиль   (2007-04-02 10:06:00) [4]

Ну, зависит от задачи. Если может быть только одна форма данного класса, то искать по классу.


MZ   (2007-04-02 10:05:00) [5]


> Проверять на nil бесполезно. особенно при таком создании
> > else TMyForm.Create(OwnerForm)

и какой выход?


Рамиль   (2007-04-02 10:01:00) [6]

Проверять на nil бесполезно. особенно при таком создании
> else TMyForm.Create(OwnerForm)


MZ   (2007-04-02 09:50:00) [7]


> "Их" аж MDIChildCount штук существует - ты о какой из них
> речь ведешь ?
>

К примеру есть MDI форма MyForm.  Если она не создана - по нажатию на buttoh делаю TMyForm.Create(OwnerForm), если создана делаю ее активной. Пробовал
if not (MYForm=nil) then
 MyForm.SetFocus
else TMyForm.Create(OwnerForm)

даже если MyForm существует, создается второй экземпляр... Что я делаю не так?


Сергей М.   (2007-04-02 09:34:00) [8]

if MainForm.MDIChildCount > 0 then
  как минимум одна MDIChild-форма существует


> сделать ее активной


Кого "ее"-то ?

"Их" аж MDIChildCount штук существует - ты о какой из них речь ведешь ?


Наверх

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