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

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

SaveDialog [D7, XP]


Страницы:   1 2

fics ©   (2008-01-28 18:16:00) 

Мастера подскажите как быть, хотел сделать вместо ofOverWritePrompt, cвой диалог, в универе сказали чтобы на всех моих диалогах в моей программе была иконка моей апликации(красота это главное!!!)
думал в два счета, а что то неполучается.

Вот к примеру для текста


procedure TMainF.SaveBtnClick(Sender: TObject);
begin
if not SaveDialog.Execute then Exit
 else

 if FileExists(SaveDialog.FileName) then
   begin
    MyDialogF.ShowModal;
    Exit;
   end else

   Memo.Lines.SaveToFile(SaveDialog.FileName);
end;



procedure TMyDialogF.CnlBtnClick(Sender: TObject);
begin
//Если кликаем на отмене то опять нужно вызвать SaveDialog
MainF.SaveDialog.Execute;
end;

Но TMyDialogF почему то не исчезает, объясните почему?(CnlBtn - mrCencel) и диалог выгидывает ровно через однин раз.


fics   (2008-01-28 19:54:00) [1]

Все спасибо всем


fics   (2008-01-28 19:54:00) [2]


> clickmaker ©
</I
> если у кнопки "Cencel " ModalResult не mrCancel, то да

>
Блин, действительно невнимательность,


clickmaker   (2008-01-28 19:51:00) [3]

исправь, кстати, Cencel на C ancel или на "Отмена" или "На фиг", а то не зачтут


clickmaker   (2008-01-28 19:49:00) [4]


> [20] fics ©   (28.01.08 19:42)
>
> > clickmaker ©
>
> Ну постараюсь поподробнее: в вашем коде когда я кликаю на
> Cencel MyDialoga - исчежает SaveDialog и MyDialog

если у кнопки "Cencel " ModalResult не mrCancel, то да


fics   (2008-01-28 19:45:00) [5]


> DiamondShark ©
</I
> скопипастит,

>
ну а что делать пол дня просидел, за этой ерундой выставил бы
опцию ofOverWritePrompt по хорошему и все, а им нужен Диалог с картинкой и красным сообщением


fics   (2008-01-28 19:42:00) [6]


> clickmaker ©

Ну постараюсь поподробнее: в вашем коде когда я кликаю на Cencel MyDialoga - исчежает SaveDialog и MyDialog(нужно опять нажимать SaveBtn чтобы сохранить под другим именем), а нужно чтобы в таком случае SaveDialog не закрывался. Понятно?


clickmaker   (2008-01-28 19:35:00) [7]


> [18] DiamondShark ©   (28.01.08 19:33)

судя по [16], он чел упертый, так что, может, и вдумается )


DiamondShark   (2008-01-28 19:33:00) [8]


> clickmaker ©   (28.01.08 19:27) [13]
>
> > MyDialogF.ShowModal;
> >      CanClose := false;
>
> ??
> может, все-таки, как в [9]? :)

Заказов не поступало. Откуда я знаю, сколько там в руганьбоксе опций будет: "Отказаться", "Фиг его знает", "Перезаписать", "Совсем перезаписать"?

Ну и потом просто интересно, скопипастит, и потом придёт спрашивать: "А как сделать выбор "Да" и "Нет"?", или вдумается...


clickmaker   (2008-01-28 19:31:00) [9]


> [16] fics ©   (28.01.08 19:29)

ниче не понимаю... зачем?


fics   (2008-01-28 19:29:00) [10]


> clickmaker ©   (28.01.08 19:27) [13]
> > MyDialogF.ShowModal;>      CanClose := false;??может,
> все-таки, как в [9]? :)

Нет нужно опять вызвать SaveDialog


clickmaker   (2008-01-28 19:28:00) [11]


> что во Cencel
> нужно опять вызвать SaveDialog

"во Cencel" он просто не закроется, и юзер может поменять имя.
зачем еще раз вызывать?


fics   (2008-01-28 19:28:00) [12]


> DiamondShark ©   (28.01.08 19:25) [11]
> > fics ©   (28.01.08 19:14) [8] Ты бредишь.
Действительно спасибо, пора наверно отдухнуть


clickmaker   (2008-01-28 19:27:00) [13]


> MyDialogF.ShowModal;
>      CanClose := false;

??
может, все-таки, как в [9]? :)


fics   (2008-01-28 19:26:00) [14]


> > clickmaker ©

Извеняюсь работает, я так делал только чуть иначе, дело в том что во Cencel
нужно опять вызвать SaveDialog


DiamondShark   (2008-01-28 19:25:00) [15]


> fics ©   (28.01.08 19:14) [8]

Ты бредишь.


procedure TMainF.SaveBtnClick(Sender: TObject);
begin
if SaveDialog.Execute
  then Memo.Lines.SaveToFile(SaveDialog.FileName);
end;

procedure TMainF.SaveDialogCanClose(Sender: TObject;
var CanClose: Boolean);
begin
 if FileExists(SaveDialog.FileName) then
   begin
     MyDialogF.ShowModal;
     CanClose := false;
   end
 else CanClose := true;
end;


TMyDialogF.CnlBtnClick вообще нафиг убрать, поставить в дизайнере кнопке ModalResult = mrCancel


fics   (2008-01-28 19:23:00) [16]


> clickmaker ©

Ну может и не понял, а ошибка таже самая


clickmaker   (2008-01-28 19:19:00) [17]


> [8] fics ©   (28.01.08 19:14)

похоже, ты не понял...

procedure TMainF.SaveDialogCanClose(Sender: TObject;
var CanClose: Boolean);
begin
 if FileExists(SaveDialog.FileName) then
 begin
   if MyDialogF.ShowModal = mrCancel then // запрещаем перезапись, ждем другое имя файла
     CanClose := false;
 end;  
end;

procedure TMainF.SaveBtnClick(Sender: TObject);
begin
if SaveDialog.Execute then
   Memo.Lines.SaveToFile(SaveDialog.FileName);
end;

CnlBtnClick не нужна


fics   (2008-01-28 19:14:00) [18]

procedure TMainF.SaveBtnClick(Sender: TObject);
begin
SaveDialog.Execute;
end;

procedure TMainF.SaveDialogCanClose(Sender: TObject;
 var CanClose: Boolean);
begin
 if FileExists(SaveDialog.FileName) then
    MyDialogF.ShowModal
  else

   Memo.Lines.SaveToFile(SaveDialog.FileName);
   MyDialogF.Close;
end;

procedure TMyDialogF.CnlBtnClick(Sender: TObject);
begin
MainF.SaveDialog.Execute;
end;


clickmaker   (2008-01-28 19:12:00) [19]


>  [6] fics ©   (28.01.08 19:10)

показывай, как делаешь?


fics   (2008-01-28 19:10:00) [20]

Незакрывается SaveDialog чего то и появляется в следствие второй, третий
и тд


Страницы:   1 2

Наверх

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