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

Вниз

Закрытие TOpenDialog   Найти похожие ветки 

 
..::KraN::.. ©   (2007-04-16 21:04) [0]

Пожалуйста, подскажите, как закрыть окно TOpenDialog, функция Close не помогает?


 
Virgo_Style ©   (2007-04-16 21:20) [1]

а.... зачем, если не секрет?


 
..::KraN::.. ©   (2007-04-16 21:58) [2]

Надо. Чтобы при нажатии на кнопку "Отмена" OpenDialog не показывался. Не знаю поймешь меня или нет :(


 
Virgo_Style ©   (2007-04-16 22:05) [3]

..::KraN::.. ©   (16.04.07 21:58) [2]
Не знаю поймешь меня или нет


нет, не пойму.

Не показывай диалог при нажатии на кнопку Отмена. Поможет. Зуб даю.


 
_Аноним   (2007-04-16 22:14) [4]

Покажи код вызова диалога. У тебя там косяк.


 
{RASkov}   (2007-04-16 22:43) [5]

> подскажите, как закрыть окно TOpenDialog

Чесслово глупость какая-то... а зачем его открывал?


 
..::KraN::.. ©   (2007-04-17 12:09) [6]

Короче, есть диалог сохранения файла. Если файл изменён, то при нажатии на кнопку ДА файл сохраняется и открывается OpenDialog1, если нет файл не сохраняется и тоже открывается этот же диалог, а если нажата кнопка Отмена файл не сохраняется и OpenDialog1 не открывается. Теперь наверное понятно? ;)


 
Amoeba ©   (2007-04-17 12:13) [7]


> ..::KraN::.. ©   (17.04.07 12:09) [6]
>
> Короче, есть диалог сохранения файла. Если файл изменён,
>  то при нажатии на кнопку ДА файл сохраняется и открывается
> OpenDialog1, если нет файл не сохраняется и тоже открывается
> этот же диалог, а если нажата кнопка Отмена файл не сохраняется
> и OpenDialog1 не открывается. Теперь наверное понятно? ;
> )
>

А теперь предъяви свой кривой код. Тогда и займемся его выпрямлением.


 
Плохиш ©   (2007-04-17 12:16) [8]


> ..::KraN::.. ©   (17.04.07 12:09) [6]

Надо прочитать книжку по использованию операторов ветвления в делфи.


 
SergGG ©   (2007-04-17 12:18) [9]

Если Я правильно понял:

 if SaveDialog1.Execute then
 begin
   if OpenDialog1.Execute then
  ....
 end else
 .....


 
..::KraN::.. ©   (2007-04-17 12:34) [10]

If Form1.StatusBar1.Panels[2].Text="Текст был изменён" then
  Begin
   case MessageDlg("Сохранить изменения в файле "+" "+"""+ExtractFileName(fail)+"""+" "+"?", mtWarning, mbyesnoCancel, 0) of
     mrYes:  if fail="" then
               begin
                 if SaveDialog1.Execute then
                   SynEdit1.Lines.SaveToFile(SaveDialog1.FileName);
               end
             else SynEdit1.lines.SaveToFile(fail);
  end;
<<- Вот такой код!


 
Плохиш ©   (2007-04-17 12:36) [11]


> ..::KraN::.. ©   (17.04.07 12:34) [10]

Как это вяжется с

> ..::KraN::.. ©   (16.04.07 21:04)  


 
SergGG ©   (2007-04-17 12:43) [12]

..::KraN::.. ©   (17.04.07 12:34) [10]
А где ж тут OpenDialog?


 
TRUNK ©   (2007-04-17 12:50) [13]

Возможно так:

if FileModified then
 case Application.MessageBox(PChar("Сохранить изменения в файле """ + FileName + """ ?"),PChar("Сохранить изменения?"),MB_YESNOCANCEL) of
   IDYES:    if SaveDialog.Execute then
               begin
               SaveFile;
               AllowOpen := true;
               end
             else
               AllowOpen := false;
   IDNO:     AllowOpen := true;
   IDCANCEL: AllowOpen := false;
 end
else
 AllowOpen := true;

if AllowOpen then
 if OpenDialog.Execute then
   OpenFile;


 
..::KraN::.. ©   (2007-04-17 13:29) [14]


> А где ж тут OpenDialog?

Я просто не стал полный код писать :( Вот он полностью:
If Form1.StatusBar1.Panels[2].Text="Текст был изменён" then
  Begin
   case MessageDlg("Сохранить изменения в файле "+" "+"""+ExtractFileName(fail)+"""+" "+"?", mtWarning, mbyesnoCancel, 0) of
     mrYes:  if fail="" then
               begin
                 if SaveDialog1.Execute then
                   SynEdit1.Lines.SaveToFile(SaveDialog1.FileName);
               end
             else SynEdit1.lines.SaveToFile(fail);
  end;
end;
 If OpenDialog1.Execute then
   begin
     StatusBar1.Panels[2].Text:="";
     Synedit1.Lines.LoadFromfile(OpenDialog1.fileName);
     fail:=OpenDialog1.fileName;
     StatusBar1.Panels[0].text:=fail;
     a:=Synedit1.Lines.Count;
     b:=InttoStr(a);
     StatusBar1.Panels[1].text:="В тексте "+b+" строк";
     Edit1.Text:=fail;
     TabSheet2.Caption:=ExtractFileName(fail)+" - "+"Просмотр";
     TabSheet1.Caption:=ExtractFileName(fail)+" - "+"HTML код";
   end;


 
{RASkov}   (2007-04-17 13:43) [15]

> [14] ..::KraN::.. ©   (17.04.07 13:29)

Разнеси открытие и сохранение файла по разным методам(процедурам).... Проще будет думать где и как открыть или сохранить...


 
Игорь Шевченко ©   (2007-04-17 13:43) [16]


> Я просто не стал полный код писать :( Вот он полностью:


Лучше бы ты и полностью не писал.


 
Плохиш ©   (2007-04-17 13:46) [17]


> ..::KraN::.. ©   (17.04.07 13:29) [14]

Тебе уже ответили за 39 минут до того как ты соизволил свой "код" выложить.



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

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

Наверх




Память: 0.51 MB
Время: 0.024 c
15-1176195527
ocean
2007-04-10 12:58
2007.05.06
Office systems (word processors, spreadsheets, e-mail, etc.)


2-1176549694
Fantasy
2007-04-14 15:21
2007.05.06
C: Documents and Settings в C: Docume~1 как перевести ?


2-1176528655
Гость у мастеров
2007-04-14 09:30
2007.05.06
ActiveX. начало


2-1176526279
NewPlayer
2007-04-14 08:51
2007.05.06
почему не уничтожается обьект


1-1173696942
Novice
2007-03-12 13:55
2007.05.06
Файловая система, получение информации