Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.02.15;
Скачать: CL | DM;

Вниз

Вопрос по определению формы MDI приложения и про расширение файла   Найти похожие ветки 

 
Andrnow   (2009-01-05 04:42) [0]

Имеется программа с интерфейсом MDI (стандартный шаблон). В ней сначала через Главное меню-->файл-->Открыть открывается основной текстовый файл, а потом несколько дополнительных (т.е. первый открытый файл - основной, а все остальные - дополнительные). Как мне сделать так, чтобы основной файл нельзя было закрыть до закрытия всех дополнительных файлов?

Пытаюсь сделать это так:

procedure TMDIChild.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if (????????????????????????????) and (MDIChildCount<2) then
 begin
 MessageDlg("Закрыть основной файл можно только после закрытия всех дополнительных’,[mbOk],0);
 Action:=caNone;
 end;
end;

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

    И еще вопрос. Как сделать так, чтобы когда сохраняешь файл (через SaveDialog) к названию файла автоматически дописывалось расширение, выбранное из списка типа файла (что ниже поля, в которое нужно писать название файла)?


 
KilkennyCat ©   (2009-01-05 06:08) [1]

1. Я бы основному при создании добавил бы событие OnCloseQuery
2. Присвоить необходимое расширение свойству SaveDialog DefaultExt, при инициализации, а также при выборе типа файла в событии SaveDialog  onTypeChange


 
KilkennyCat ©   (2009-01-05 06:17) [2]

1. можно еще воспользоваться свойством Tag, тогда:
.....
procedure TMainForm.CreateMDIChild(const Name: string);
var
 Child: TMDIChild;
begin
.....
 if создается основной then Child.Tag := 111 else Child.Tag := 0;
.....
end;

....
if ((Sender as TMDIChild).tag = 111) and (MDIChildCount<2) then


 
KilkennyCat ©   (2009-01-05 06:18) [3]

только, наверное, правильнее (MDIChildCount > 1)


 
Andrnow   (2009-01-05 21:00) [4]

Спасибо. Сделал.



Страницы: 1 вся ветка

Текущий архив: 2009.02.15;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
2-1230991906
demon
2009-01-03 17:11
2009.02.15
Падсказка над иконкой в трее


4-1205397361
Костик
2008-03-13 11:36
2009.02.15
Как запретить мышке перемещаться в определенную позицию.


15-1229711962
@!!ex
2008-12-19 21:39
2009.02.15
Туплю... помогите...


15-1229653234
XentaAbsenta
2008-12-19 05:20
2009.02.15
Виртуальные статические методы


3-1215351058
Kolan
2008-07-06 17:30
2009.02.15
LIKE в SQLite или как без него обойтись.