Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.03.2012, 15:52   #1
ScorpioN_T
Пользователь
 
Регистрация: 27.10.2008
Сообщений: 62
По умолчанию Delphi работа с Word (таблицы)

Всем доброго времени суток!
Delphi
word
Есть шаблон в word'e, одна страница, в нем таблица из 3 больших строк в два столбца ( получается 6 ячеек). В конце каждой ячейки (этой таблицы), есть еще две ячейки, в одну из этих ячеек МНЕ надо поместить Цифры.

Этот лист (после распечатки на бумагу) в дальнейшем будет резаться на ШЕСТЬ равных частей, нужно чтобы каждый, из частей был пронумерован.

Или как можно по другому создать приложение не пользуясь программой Word, т.е. через приложение Delphi.
Т.е. пускать на печать из программы, с возможностями:
-редактирования,
-вставки рисунка, как перед текстом и так же на фон
-вычерчивание таблицы
Изображения
Тип файла: bmp forum.bmp (170.4 Кб, 148 просмотров)

Последний раз редактировалось ScorpioN_T; 30.03.2012 в 16:41. Причина: дополнение
ScorpioN_T вне форума Ответить с цитированием
Старый 30.03.2012, 16:52   #2
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,762
По умолчанию

А Ворд Вас чем не устраивает? Что именно не получается? Указываете Cell где надо писать и вперёд.
FaTaL вне форума Ответить с цитированием
Старый 30.03.2012, 16:58   #3
ScorpioN_T
Пользователь
 
Регистрация: 27.10.2008
Сообщений: 62
По умолчанию

На счет word я передумал. (если есть шаблон, то его можно просто отредактировать и изменить под свой вкус).
А мне надо чтобы пользователь не смог его просмотреть, не говоря о редактировании.
П.С. эти листы нужны для чеков, поэтому надо чтобы к ШАБЛОНУ имел доступ ТОЛЬКО администратор.
ScorpioN_T вне форума Ответить с цитированием
Старый 30.03.2012, 17:37   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
А мне надо чтобы пользователь не смог его просмотреть, не говоря о редактировании.
Можно шаблон зашить в ресурсный файл и брать оттуда. Или пользоваться генератором отчетов, их не один вариант есть
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 30.03.2012, 17:39   #5
ScorpioN_T
Пользователь
 
Регистрация: 27.10.2008
Сообщений: 62
По умолчанию

Аватар
есть пример?
ScorpioN_T вне форума Ответить с цитированием
Старый 30.03.2012, 18:03   #6
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Что касается работы с Word-ом, то CreateOLEObject('Word.Application') и вперед, изучив соответствующие объекты и методы Word-а. Есть еще компоненты в дельфях, позволяющие аналогичные действия делать, но с ними не работал. Генератор отчетов? А какой тут можно пример? Ищите бесплатный или покупайте умеющий кроме текстовки и с картинками в отчетах работать
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 31.03.2012, 17:46   #7
ScorpioN_T
Пользователь
 
Регистрация: 27.10.2008
Сообщений: 62
По умолчанию

на форме расположен компонент Image, на кавасе которого нарисована таблица.
Как распечатать этот Image ?

код можно и пропустить, но всё же предоставлю его,
имеется следующий код

Код:
procedure TForm1.tables (x,y:integer);
var nx,ny:integer;
  i,j:byte;
begin
with image1 do
 begin

    canvas.Pen.Width:=1;
    nx:=57;
    ny:=0;
    for i:=0 to 1 do
    begin
     for j:=0 to 2 do
      begin
       canvas.TextOut(nx+10,60+ny,inttostr(checknumber));
       canvas.TextOut(nx+255,355+ny,inttostr(checknumber));
       checknumber:=checknumber+1;
       ny:=ny+320;
      end;
     nx:=nx+338;
     ny:=0;
    end;


    nx:=57;
    ny:=0;
    for i:=0 to 1 do
    begin
     for j:=0 to 2 do
     begin
      canvas.TextOut(nx+200,60+ny,'Äàòà: ');
       canvas.MoveTo(nx +93,57+ny);
       canvas.LineTo(nx +93,75+ny);
       canvas.MoveTo(nx+193,57+ny);
       canvas.LineTo(nx+193,75+ny);
       canvas.MoveTo(nx+233,57+ny);
       canvas.LineTo(nx+233,75+ny);
        canvas.MoveTo(57,75+ny);
        canvas.LineTo(733,75+ny);

          canvas.MoveTo(57,349+ny);
          canvas.LineTo(733,349+ny);
          canvas.MoveTo(nx+245,349+ny);
          canvas.LineTo(nx+245,377+ny);


      ny:=ny+320;
     end;
    nx:=395;
    ny:=0;
    end;

    canvas.Pen.Width:=2;
// niz i verh
    canvas.MoveTo(57,57);
    canvas.LineTo(733,57);
    canvas.MoveTo(57,1017);
    canvas.LineTo(733,1017);
// pravo i levo
    canvas.MoveTo(57,57);
    canvas.LineTo(57,1017);
    canvas.MoveTo(733,57);
    canvas.LineTo(733,1017);

// osnovnye linii
    canvas.MoveTo(395,57);
    canvas.LineTo(395,1017);

// osnovnye linii
//vertikal'
    canvas.MoveTo(395,57);
    canvas.LineTo(395,1017);
//horizontal'
    canvas.MoveTo(57,377);
    canvas.LineTo(733,377);
    canvas.MoveTo(57,697);
    canvas.LineTo(733,697);

 end;
end;


procedure TForm1.FormCreate(Sender: TObject);
begin
checknumber:=1;
image1.Canvas.Pixels[10,10]:=clred;
image1.Height:=1090;
image1.Width:=790;

tables(50,50);

end;
П.С. искал через поисковик, в большинстве случаев натыкался на примеры с модулем Printers, но не разобрался как же всё таки отправить на печать МОИ Image.

Последний раз редактировалось ScorpioN_T; 31.03.2012 в 17:49. Причина: дополнил (П.С.)
ScorpioN_T вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отображение таблицы БД в Word (Delphi) ара Помощь студентам 1 09.11.2011 12:17
изменение высоты строки таблицы Word из Delphi krGorka Общие вопросы Delphi 2 01.02.2011 17:09
Как перевести данные таблицы из Word в Exel средствами Delphi? Pinkygirl Помощь студентам 0 20.12.2009 16:04
Как вычислять значения вне таблицы WORD, с использованием данных из таблицы WORD prikolist Microsoft Office Word 6 21.11.2008 13:17
Работа с Word в Delphi Sanek_ntsk Общие вопросы Delphi 4 12.06.2008 10:20