Вниз
Скачать: CL | DM;

Снова про With   Найти похожие ветки 

← →
Kostafey ©   (2007-05-10 11:03) [0]

Была про это ветка, но как-то я ее несерьезно воспринял.
Видимо зря:


type
 TExportToWord = class(TObject)
 private
   ...
   TemplateFileName: string;
 public
   procedure AddTemplate(TemplateFileName: string);
   ...
 end;

implementation

procedure TExportToWord.AddTemplate(TemplateFileName: string);
begin
 Self.TemplateFileName := TemplateFileName;
 W.Documents.add(Self.TemplateFileName);
end;

...
 var ExportToWord: TExportToWord;
...

 ExportToWord := TExportToWord.Create;
 ExportToWord.AddTemplate(TemplateFileName); //Документ создается на основе шаблона
 showmessage(ExportToWord.TemplateFileName); //Все OK, видим строку - путь к файлу шаблона
                         
//Но стоит воспользоваться with:
 ExportToWord := TExportToWord.Create;
 with ExportToWord do
 begin
   AddTemplate(TemplateFileName); //Создается пустой документ
   showmessage(TemplateFileName); //Видим пустую строку
 end;

Почему так?


← →
Johnmen ©   (2007-05-10 11:18) [1]

Потому, что это =
ExportToWord.AddTemplate(ExportToWord.TemplateFileName)
showmessage(ExportToWord.TemplateFileName);


← →
Kostafey ©   (2007-05-10 11:27) [2]

> ExportToWord.AddTemplate(ExportToWord.TemplateFileName)

Ых !? Да. Верно!
 
with ExportToWord do
 begin
   AddTemplate(TemplateFN);
   showmessage(TemplateFileName);
 end;

И все заработало.
Спасибо !


← →
Desdechado ©   (2007-05-10 12:50) [3]

Это к тому, что не стоит называть параметры, свойства и локальные переменные одинаково.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.027 c
2-1178520778
Doom-2
2007-05-07 10:52
2007.05.27
Как в ListBox строки местами менять?


2-1178729528
Виктор007
2007-05-09 20:52
2007.05.27
Список последних открытых файлов


15-1176387794
Vlad Oshin
2007-04-12 18:23
2007.05.27
Excel неправильно хранит свой лист в другом формате. Почему?


2-1178611830
Lobach
2007-05-08 12:10
2007.05.27
Можно ли в операторе if задавать несколько условий?


4-1166780935
Grademax
2006-12-22 12:48
2007.05.27
Как узнать сколько времени отработал HDD?




   Наверх