Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #16  
Старый 17.11.2013, 21:25
Delphi_Source Delphi_Source вне форума
Прохожий
 
Регистрация: 01.10.2013
Сообщения: 32
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Цитата:
Сообщение от poli-smen
Да. Но присутствия компонента TPrintDialog недостаточно для вывода этого диалогового окна - ещё нужно вызвать метод Execute этого компонента:
Код:
if PrintDialog1.Execute then // Если пользователь нажал кнопку "ОК" в диалоге печати...
begin
  // ... тогда печатаем
end;

Процесс печати подредактировал:

Код:
procedure TForm1.Button2Click(sender: tobject);
var i:integer;
Prn, Txt: TextFile;
begin
//Если запущен диалог печати и не было отмены
if PrintDialog1.Execute then begin
//Задание количества копий
Printer.Copies:=PrintDialog1.Copies;
//Задание параметров шрифта
Printer.Canvas.Font.Name:='Times New Roman';
Printer.Canvas.Font.Size:=14;
//Связывание текстового файла с принтером по умолчанию
AssignPrn(Prn); // Переназначаем вывод в файл на вывод в принтер
  AssignFile(Txt, 'C:\ТекстДок.txt');
  Rewrite(Prn); // Готовим принтер к печати
  Rewrite(Txt);
  Printer.Canvas.Font:= Memo.Font;

  // Цикл печати:
  for i := 0 to Memo.Lines.Count - 1 do
  begin
    Writeln(Prn, Memo.Lines[i]);
    Writeln(Txt, Memo.Lines[i]);
  end;

  CloseFile(Prn);
  CloseFile(Txt);
end;
end;
end.


Теперь появилось стандартное диалоговое окно для выбора параметров печати.
Текст с Memo автоматически отображается в текстовом документе.
Все идеально! Спасибо большущее.

Скажите, а если я изменю текст в этом файле, то он отобразится на поле Memo в Delphi автоматически при запуске этого приложения?
Ответить с цитированием
  #17  
Старый 17.11.2013, 21:31
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от Delphi_Source
Скажите, а если я изменю текст в этом файле, то он отобразится на поле Memo в Delphi автоматически при запуске этого приложения?
Нет. Нужно самому загружать этот файл в Memo. Например так:
Код:
Memo.Lines.LoadFromFile('C:\ПутьКФайлу\ИмяФайла.txt');
Ответить с цитированием
Этот пользователь сказал Спасибо poli-smen за это полезное сообщение:
Delphi_Source (17.11.2013)
  #18  
Старый 17.11.2013, 21:34
Delphi_Source Delphi_Source вне форума
Прохожий
 
Регистрация: 01.10.2013
Сообщения: 32
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Цитата:
Сообщение от poli-smen
Нет. Нужно самому загружать этот файл в Memo. Например так:
Код:
Memo.Lines.LoadFromFile('C:\ПутьКФайлу\ИмяФайла.txt');

Куда именно лучше вставить этот кусочек кода?
Ответить с цитированием
  #19  
Старый 17.11.2013, 21:41
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от Delphi_Source
Куда именно лучше вставить этот кусочек кода?
Раз нужно чтобы загружалось в Memo при запуске приложения, тогда лучше на событие OnCreate формы. Примерно так:
Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
  if FileExists('C:\ТекстДок.txt') then // Проверка - вдруг такого файла ещё не существует
    Memo.Lines.LoadFromFile('C:\ТекстДок.txt');
end;
Ответить с цитированием
Этот пользователь сказал Спасибо poli-smen за это полезное сообщение:
Delphi_Source (17.11.2013)
  #20  
Старый 17.11.2013, 21:53
Delphi_Source Delphi_Source вне форума
Прохожий
 
Регистрация: 01.10.2013
Сообщения: 32
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Цитата:
Сообщение от poli-smen
Раз нужно чтобы загружалось в Memo при запуске приложения, тогда лучше на событие OnCreate формы. Примерно так:
Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
  if FileExists('C:\ТекстДок.txt') then // Проверка - вдруг такого файла ещё не существует
    Memo.Lines.LoadFromFile('C:\ТекстДок.txt');
end;


Спасибо большое за помощь в написании кода и разработки в целом.
Все идеально функционирует!
Ответить с цитированием
  #21  
Старый 17.11.2013, 22:05
Delphi_Source Delphi_Source вне форума
Прохожий
 
Регистрация: 01.10.2013
Сообщения: 32
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

А каким образом можно произвести печать списка выделенных объектов файловой системы?
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 03:29.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter