Как да проверите дали е създаден под формата
Lord програмисти! Prompt.
заявление Има MDI. При натискане на бутона се създава форма с DBGrid. Методът се нарича Show. Как мога да направя, когато се натисне отново, формата не е създаден отново, а просто показва. Т.е. как да се провери дали е създаден под формата на MDIChild.
ако MDIChild1 <> нула след това.
флаг или завист
на какво основание всяка форма Надпис пример.
Form1.MDIChildCount
Form1.MDIChildren
С MDI Бъдете внимателни: програмата не знае точно, че Chidlom (тя съществува или не) пее по-добър начин да го направите:
докато "натискане":
ако FrmTTN = нула след FrmTTN: = TFrmTTN.Create (самостоятелно);
FrmTTN.WindowState: = wsMaximized;
FrmTTN.Show;
процедура TFrmMDIChild.FormClose (Sender: TObject; Var действие: TCloseAction);
започвам
Действие: = CaFree;
приключи;
процедура TFrmTTN.FormDestroy (Sender: TObject);
започвам
FrmMDIChild: = нула;
приключи;
Аз търсех в един момент решение на този проблем и това е, което дойде
функция ExistsForm (S: String): булева;
Var I: цяло число;
започвам
резултат: = False;
защото: = 0 до screen.FormCount-1 направи
ако главни (screen.Forms [I] .name) = главна (и) след това са резултат: = True;
приключи;
параметър - името на формата. Може да не е шедьовър, но тя работи перфектно.
Всичко това работи (и решение Sergey13 на и шутът). Освен това, ако формата го сведе до минимум отново креативни. Докато стои в OnClose действие: = caFree? Получава се от две форми.
За съжаление господа. Всичко работеше. Благодаря Ви много.
Свързани статии