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

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

печать с помощью chartFX (ActiveX) [D7, 2000]


delphim ©   (2007-01-05 07:24:00) 

Здравствуйте !
Не выполняется печать графика в компоненте ActiveX chartFx.
Вот код:

 if not PrintDialog.Execute then exit;
 ChartFx.PrintIt;

И никакой ошибки, и никакой печати. Кто знает, что здесь не установлено ?


delphim   (2007-01-06 07:26:00) [1]

В догонку:
Я установил в ОС используемый принтер по умолчанию (своего нет, принтер сетевой). И сработал метод Chartfx.PrintIt ! Нет слов. Неужели в delphi после PrintDialog.Execute
придётся устанавливать выбранный принтер по умолчанию ?


delphim   (2007-01-06 07:10:00) [2]

Не хочет печатать.
Не выполняется родной метод Chartfx.PrintIt;
не выполняются и
ChartFx.PaintTo(Printer.Handle, 1200, 1200);  // я изменил 3000 -> 1200
СhartFx.Paint(Printer.Handle, 0, 0, 1200, 1200, 1, 0);
При этом, установлено
ChartFx.Style := ChartFx.Style + CST_PRINT;


SergGG   (2007-01-05 10:19:00) [3]

> if not PrintDialog.Execute then exit;
> я вставил для того, чтобы был выбран объект TPrinter.

Помоему можно TPrinter задать:
Uses Printers;

>ChartFx.PaintTo(Printer.Handle, 3000, 3000);  // это пример из help

а это у меня работает


delphim   (2007-01-05 10:04:00) [4]

SergGG !
Строку
if not PrintDialog.Execute then exit;
я вставил для того, чтобы был выбран объект TPrinter.
Вначале я думал, что ChartFx имеет свой способ выбора принтера, - у него есть метод ChartFx.ShowDialog(nDialog,lExtra); но тип диалога nDialog = [выбор принтера] отсутствует. Есть, например, CDIALOG_EXPORTFILE, CDIALOG_IMPORFILE и т.д. Пробовал и так:
ChartFx.PaintTo(Printer.Handle, 3000, 3000);  // это пример из help
Но без результата.


SergGG   (2007-01-05 09:06:00) [5]

Попробуй так:

//if not PrintDialog.Execute then exit;
Chartfx.PrintIt;


Наверх

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