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

Вывод данных с TListView на Принтер   Найти похожие ветки 

 
Officeman ©   (2007-01-26 13:26) [0]

сабж.
необходимо распечатать табличку [ListView].   как осуществить?


 
alex_*** ©   (2007-01-26 13:51) [1]

в текст и на принтер


 
clickmaker ©   (2007-01-26 14:01) [2]

Printer.BeginDoc();
for i := 0 to LV.Items.Count - 1 do begin
  if (i > MaxPageLines) then
    Printer.NewPage();
  Printer.Canvas.TextOut(x, y, LV.Items[i].Caption);
end;
Printer.EndDoc()


 
Officeman ©   (2007-01-29 08:40) [3]

при этом печатает все позиции в одну строку => получается много наложений в начале страницы. т.е. как будто не происходит смещение(перевод на новую строку)


 
evvcom ©   (2007-01-29 09:02) [4]

> [3] Officeman ©   (29.01.07 08:40)

Ну так x, y правильно разруливай. Или используй Write/Writeln.


 
Officeman ©   (2007-01-29 09:06) [5]

при выводе текста в канвас, где использовать Writeln ??

да я пробовал выводить каждую новую строку с шагом. например

Printer.Canvas.TextOut(10, y+50, LV.Items[i].Caption);

тока это ничё не дало)


 
Сергей М. ©   (2007-01-29 09:18) [6]


> при выводе текста в канвас, где использовать Writeln ?


Нигде. Это из другой оперы.
Либо ты непосредственно с канвой работашь и сам разруливаешь координаты вывода, либо ты поручаешь это ф-ции WriteLn


> пробовал выводить каждую новую строку с шагом


Шаг организуется циклическим инкрементом соотв.координаты на заданное значение, а у тебя этого инкремента, очевидно, нет.


 
evvcom ©   (2007-01-29 09:20) [7]

> [5] Officeman ©   (29.01.07 09:06)
> при выводе текста в канвас, где использовать Writeln ??

Нигде.
Writeln - это старый добрый способ печати документа в файл или на принтер. В Delphi его реализация естественно сделана через Printer.Canvas. Помнится, делал двоим двоечникам 2 контрольных работы за соответствующую мзду. Пришлось досконально разобраться с этими 2 способами. Мое имхо, что через AssignPrn/Rewrite/Write/Writeln/CloseFile делать гораздо проще, хотя и менее гибко, но разве тебе гибкость нужна? Хотя ничего не мешает между Write-ами обратиться и напрямую к Printer.Canvas.


 
Officeman ©   (2007-01-29 09:48) [8]

Необходимо рисовать красивую табличку (ПрайсЛист). Заголовки выделять жирненьким. Колличесто полей в табличке 5.

объясните детально почему происходит наложение. какой параметр отвечает за смещение(вывод новой позиции в новом месте)

Спасибо за поддержку топа


 
Сергей М. ©   (2007-01-29 10:24) [9]

Для генерации отчетов существует огромная куча готовых компонентов (QuickReport, Free/FastReport, RaveReportCrystalReport и т.д. и т.п.). Заниматься самостоятельной генерацией сложного изображения будущего отчета, тем более при таком уровне знаний (если конечно же это не учебная задача) - это мазохизм)



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

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



Память: 0.47 MB
Время: 0.028 c
2-1169992592
Cj
2007-01-28 16:56
2007.02.18
Thread->process


2-1170228447
NLex
2007-01-31 10:27
2007.02.18
GUID


15-1169595782
SkySpeed
2007-01-24 02:43
2007.02.18
Хочу в качестве проводника сделать Total Commander


4-1160386567
Krants
2006-10-09 13:36
2007.02.18
WMDropFiles и компонент


3-1164250027
~SerJant~
2006-11-23 05:47
2007.02.18
Использование FastReport (TfrxBDEDataBase)




   Наверх