Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.18;
Скачать: CL | DM;

Вниз

Hyperlink   Найти похожие ветки 

 
Doctor Deejay ©   (2003-08-04 09:03) [0]

Как тут однажды верно заметили, справки по Ворду в делфи нет (у меня 5 и 6 версии. Там точно нет)... Но позарез нужно добавить в документ гиперссылку!
Я как делаю:
1. Бросаю на форму 2 компонента ( WodrDocument и WordApplication)
2. Открываю ворд
3. Создаю документ
4. Печатаю там текст и форматирую его.

Как делать закладки я уже тоже знаю... А как на них ссылаться?
Пробовал так:

Wordapplication1.Selection.Hyperlinks.Add(const Anchor: IDispatch, var Addres: OleVariant, var SubAdres: OleVariant, var ScreenTip: OleVariant, var TextToDisplay: OleVariant, var Target: OleVariant);

В скобках указано то, что выдает подсказка. Пробовал ставить в полях Addres, TextToDisplay, Target то, что мне нужно, а остальные забивать EmptyParam. Оно компилится, но при выполнении сильно ругается.

Подскажите, уважаемые мастаки, что я не так делаю...


 
Palladin ©   (2003-08-04 09:14) [1]

Вот незадача. Почему же справку по Ворду в Делфи не включили. А куда же ее тогда включили.


 
I.C.   (2003-08-04 09:17) [2]

Ворд открой нажми Alt+F11 и там учись писать проги под Word :)
Там и справка естью

А еще MSDN, RTFM :)


 
Doctor Deejay ©   (2003-08-04 09:55) [3]

Да мне не нужен Visual Basic. У меня прога уже написана! Это мне теперь снова пару недель тратить, чтобы переписать?

Насчет справки под ворд - мне не под ворд, а под делфи нужно, но для работы с вордом!


 
Bel ©   (2003-08-04 10:24) [4]

Методы компонентов WordApplication, WordDocument и др. повторяют методы Вордовских объектов Application, Document и др. (более того, выполняются они COM-вервером самого Ворда). Поэтому как их применять, их описание смотри в справке по VBA Word. А потом нужные методы используй в Делфийских компонентах.


 
Palladin ©   (2003-08-04 10:36) [5]

Они не повторяют, это они и есть.


 
Doctor Deejay ©   (2003-08-04 11:10) [6]

Там же синтаксис другой...


 
Doctor Deejay ©   (2003-08-04 11:45) [7]

Вот, что я там нашел
==========================================
Коды полей: HYPERLINK
{ HYPERLINK "ИмяФайла" [Ключи ] }

Гиперссылки — это удобный способ перехода к другим документам. Конечный документ может находиться на жестком или сетевом диске (например документ Microsoft Word или книга Microsoft Excel) или по определенному адресу Интернета (например http://www.microsoft.com), может быть закладкой или слайдом. Поле содержит отображаемый текст, который обычно оформляется как синий и подчеркнутый. Для выполнения перехода пользователь щелкает этот текст. Для вставки гиперссылок используйте команду Гиперссылка (меню Вставка).

Инструкции

"ИмяФайла"
Файл, к которому следует перейти. Если этот параметр включает длинное имя файла с пробелами, заключите его в кавычки. При задании пути используйте двойные обратные косые черты, например:
«C:\\Мои документы\\Отчет.doc»

Для адресов Интернета используйте синтаксис URL, например:

« http://www.microsoft.com/ie/msie.htm»

и «mailto:someone@microsoft.com».

Ключи

\l
Указывает элемент конечного файла, например закладку, к которому следует перейти.

\m
Добавляет координаты к гиперссылке для включения в серверную гиперкарту.

\n
Открывает конечный документ в новом окне.

\o
Задает текст всплывающей подсказки для гиперссылки.

\t
Указывает объект перенаправления ссылки. Этот ключ позволяет установить связь между страницей рамок и находящейся вне ее страницей. Например:
{ HYPERLINK "ИмяФайла" \t"_top"}

Вместо рамки в окне обозревателя возникнет веб-страница назначения.

Ниже перечислены параметры для ключа \t.

\t "_top"
Целая страница
\t "_self"
Та же рамка
\t "_blank"
Новое окно
\t "_parent"
Родительская рамка
По умолчанию (без ключа) этот параметр принимает значение «Страница по умолчанию (нет)».

Примеры

Поле и текст: «Подготовка проекта успешно завершена. Щелкните { HYPERLINK "C:\\Мои документы\\project.xls" } для ознакомления.»

Результат: «Подготовка проекта успешно завершена. Щелкните Суперпроект для ознакомления.»

Щелчок синего текста откроет книгу с именем Project.xls в папке «Мои документы». Текст гиперссылки («Суперпроект») не включается в синтаксис поля. Для изменения текста гиперссылки следует ввести другой текст поверх него.
==========================================

И как мне это может помочь?


 
Jeca57   (2003-08-04 13:23) [8]

кажется так

var
i1, i2 : OleVariant;
begin
i1:=wdGoToBookmark;
i2:="ССЫЛКА";
WordApplication.Selection.GoTo_(i1,EmptyParam,EmptyParam,i2);
WordApplication.Selection.TypeText("ТЕКСТ");
end


 
jack128 ©   (2003-08-04 14:52) [9]


> Там же синтаксис другой...

Любопытный подход..А то, что WinApi на сях описано тебя не смучает???


 
Doctor Deejay ©   (2003-08-04 14:59) [10]


> кажется так
>
> var
> i1, i2 : OleVariant;
> begin
> i1:=wdGoToBookmark;
> i2:="ССЫЛКА";
> WordApplication.Selection.GoTo_(i1,EmptyParam,EmptyParam,i2);
> WordApplication.Selection.TypeText("ТЕКСТ");
> end



Так не работает. Оно добавляет ссылку в то место, где у меня стоит закладка.
А если её убрать, то вылетает ошибка:
"Указано неоднозначное назначение для страницы, строки, сноски, концевой сноски или примечания."


 
Doctor Deejay ©   (2003-08-04 15:01) [11]


> Любопытный подход..А то, что WinApi на сях описано тебя
> не смучает???


Ты бы подсказал решение лучше.....

И почему все такие скрытные????


 
jack128 ©   (2003-08-04 15:08) [12]

например выделенный обект становится ссылкой

WordApp.ActiveDocument.Hyperlinks.Add(Anchor:=Application.Selection.Range, Address:="http:\\www.microsoft.com");



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

Текущий архив: 2003.08.18;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.009 c
14-58429
VID
2003-08-02 17:02
2003.08.18
Ограничение в 65536 символов в RichEdit


14-58441
Bill Gates
2003-08-01 19:59
2003.08.18
Windows must live!


14-58421
reticon
2003-08-03 11:01
2003.08.18
Строительство яхты =)


14-58478
II
2003-07-23 18:09
2003.08.18
Как в TDBGridEh запретить редактировать поределенную колонку


14-58428
IBSN
2003-08-01 16:01
2003.08.18
ctrl+alt+delete или OnExit