Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.03.20;
Скачать: [xml.tar.bz2];

Вниз

Документ ms word овского типа... Как его создать?   Найти похожие ветки 

 
Андрей Ваганов   (2002-12-03 20:08) [0]

Всем привет!!!

Кто знает подскажите плз!
Как создать документ ms word"овского типа, чтобы можно было создавать объекты типа линия, текст итд, а потом их тягать и перетягивать в пределах листа? Еще нужно получать координаты этих объектов и сохранять всю кухню в файло(ну и читать ессно).
Укажите пожалуйста направление кода копать! (...конечно если кто сталкивался с такой задачей)
Если можно поведайте его(документа аля ms word)структуру.

Заранее благодарю.
Андрей Ваганов


 
Bsl   (2002-12-04 08:03) [1]

С помощью OLE ms word.
CreateOLEObject (кажется).

<Variant>:=CreateOLEObject("Word.Application");

С этим <variant> работаешь как с объектом Application в Visual Basic for MS Office.


 
Darius   (2002-12-04 10:53) [2]

а как сделать так што взять из Word cтрочку?


 
Dizzy   (2002-12-04 11:33) [3]

Вот кусок кода, который записывает данные в Word. Чтение примерно так же делается.

uses
ComObj, ActiveX;

procedure TFormOff.BtnWordClick(Sender: TObject);
var
Bookmark: TBookmark;
RangeW: Word97.Range;
v1: Variant;
ov1: OleVariant;
Row1: Word97.Row;
begin
WordDocument1.Activate;
// insert title
WordDocument1.Range.Text := "American Capitals from " + Table1.TableName;
WordDocument1.Range.Font.Size := 14;
// disable the UI
Table1.DisableControls;
try
// store the current position
Bookmark := Table1.GetBookmark;
try
// scan the database table
Table1.First;
while not Table1.EOF do
begin
// send the two fields
WordDocument1.Range.InsertParagraphAfter;
WordDocument1.Paragraphs.Last.Range.Text :=
Table1.FieldByName ("Name").AsString + #9 +
Table1.FieldByName ("Capital").AsString;
Table1.Next;
end;
finally
// go back to the bookmark and destroy it
Table1.GotoBookmark (Bookmark);
Table1.FreeBookmark (Bookmark);
end;
finally
// re-enable the controls
Table1.EnableControls;
end;
RangeW := WordDocument1.Content;
v1 := RangeW;
v1.ConvertToTable (#9, 19, 2);
Row1 := WordDocument1.Tables.Item(1).Rows.Get_First;
Row1.Range.Bold := 1;
Row1.Range.Font.Size := 30;
Row1.Range.InsertParagraphAfter;
ov1 := " ";
Row1.ConvertToText (ov1);
end;


 
NetKnight   (2002-12-04 16:02) [4]

А есть возможность сохранять в Excel or Word формате без онного ? Т.к. запускать через ОЛЕ саму офисную программу - дело ресурсоёмкое и медленное, к тому же я наблюдал некоторые глюки.
Я видел компоненты, которые такое могут, но у них исходников небыло.. :(


 
Андрей Ваганов   (2002-12-04 19:24) [5]

...OLE это гуд, но мне надо так, чтобы я на форме или в некоторой её части мог нарисовать например линию или строку (...итд) и была возможность её тягать по форме или некоторой её части! (без вариантов редакции в word"е)


 
Андрей Ваганов   (2002-12-05 14:12) [6]

...так что, есть еще мнения?


 
Ka$peR   (2003-01-27 12:27) [7]

RangeW: Word97.Range;
Row1: Word97.Row;

Что это за тип?


 
AlexKniga   (2003-01-27 14:07) [8]

Если очень хочетца делать документы в формате Word без OLE
M$ структуру вордовских документов не открывает, но в инете описания найдешь.
Мне проходилось делать .doc без OLE (у клиентов были слабые тачки). Дело это неблагодарное.



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

Форум: "Система";
Текущий архив: 2003.03.20;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.007 c
4-64424
Evgeniy Startsev
2003-01-25 15:18
2003.03.20
Message LVM_SCROLL


3-64052
Stenkz
2003-03-03 07:40
2003.03.20
Сравнение с nil??? Как узнать, что в поле вообще несодер. значие


3-64050
Roki
2003-03-03 11:41
2003.03.20
Как увидеть подконектившхся юзверей?


6-64257
Сергей
2003-01-30 16:49
2003.03.20
Исключительные ситуации при работе с NMHTTP


3-64018
digester
2003-03-01 12:56
2003.03.20
Проблема с запуском моей проги с DB paradox на другой машине





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский