Модераторы: MetalFan
  

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> Работа с MS Word, правка кодировки 
:(
    Опции темы
Insert
Дата 2.10.2006, 21:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 13.4.2006

Репутация: нет
Всего: 1



Здравствуйте.
 Мне очень необходима помощь мастеров, т.к. в данной области я ещё не работал, а пришлось вот.
Нужно написать программу для исправления текста в .doc документе, точнее в документе некоторые слова будут отображены в другой кодировке, программа должна будет их найти и перевести в кириллицу. Я не знаю как сделать, чтоб она в трее висела, и при открытии файла wordom автоматически правила его, или если возможно сделать в самом ворде типа панельки и там при нажатии на неё будет происходить правка текста. Я не прошу полностью делать мою работу, просто если есть какие нибудь предложения по оформлению или реализации, то прошу написать. А конкретно интересует:
1. Как поймать открытие документа
2. Как сделать лучше или легче править в самом ворде или импортировать текст в программу там  обработать, а потом экспортировать обратно в ворд, о5 же как?
3.компоненты для работы со всем этим.(кроме wordapplications);
4.Если встраиваь панель в ворд, то можно это сделать на делфях или только на встроенном бейсике, что    я точно не смогу.
    Заранее спасибо



--------------------
пьяный русский кодер практически непобедим
PM MAIL   Вверх
Albinos_x
Дата 2.10.2006, 22:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 15
Всего: 108



1. Событие WordApplication - DocumentOpen
Код

procedure TForm1.WordApplication1DocumentOpen(ASender: TObject;
  const Doc: _Document);
begin
...
end;


2. как тебе удобней, всё зависит от задачи...

3. пока кроме стандартной не видел. Обычно используют её или работают через OLE

4. можно... к пирмеру:
Код
…
procedure TForm1.Button1Click(Sender: TObject);
var d,b:OleVariant;
begin
d:='Моя панель';
// создаём панель                                 // имя, позиция, доступность
with WordApplication1.CommandBars.Add(D,EmptyParam, EmptyParam, EmptyParam) do
 begin
 // делаем её видимой
 Set_Visible(true);
  // добавляем свою кнопочку
 with Controls.Add(EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam) do
    begin
    // назначаем кнопке подпись (появится при наведении мыши)
    Set_Caption('My Button');
    // назначаем событие
    Set_OnAction('Макрос1');
    end;
 end;
…

ну и т.д. и т.п.
Цитата(Insert @  2.10.2006,  21:42 Найти цитируемый пост)
 Я не знаю как сделать, чтоб она в трее висела

http://forum.vingrad.ru/index.php?showtopic=109501



--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
Insert
Дата 2.10.2006, 23:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 13.4.2006

Репутация: нет
Всего: 1



во замечательно, буду делать панелькой в ворде, хм а как сделать чтоб в set_onAction можно было не макрос выполнять а функцию из под делфи какую нибудь, программа в это время будет висеть в памяти, я её вместе в вордом запускать буду.
--------------------
пьяный русский кодер практически непобедим
PM MAIL   Вверх
Albinos_x
Дата 2.10.2006, 23:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 15
Всего: 108



ну так же там модно назначать различные типы добавляемых объектов, от Edit, ComboBox, Button (редыдущие три названия для понятности в Своей интерпритации), Activex, ну так вот можно сделать кнопку в Activex и её добавлять, соответственно добавить свои действия на событие нажатие этой кнопки в самом  Activex...
кроме того, сам не пробовал, но в общем там должна быть команда AddIn специально для вставки своих кнопок и панелей...



--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
Insert
Дата 3.10.2006, 00:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 13.4.2006

Репутация: нет
Всего: 1



ок поробую, просто кайф было без макросов.
--------------------
пьяный русский кодер практически непобедим
PM MAIL   Вверх
Albinos_x
Дата 3.10.2006, 00:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 15
Всего: 108



Удачи...


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
Insert
Дата 3.10.2006, 21:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 13.4.2006

Репутация: нет
Всего: 1



Хорошо я определился, буду делать панелькой в Ворде, но т.к. все это впервые, то у меня не получилось,
1. мне надо создать панельку в ворде. которая будет содержать элементы формы, сombobox,checkbox и т.д
2. при взаимодействии с компонентами на этой панели, надо чтобы события обрабатывались в моей программе запущенной в фоновом режиме(или может можно как нибудь впихнуть все процедуры в саму панельку? тока без бейсика)
3. как сделать так что при запуске ворда запускалась и моя программа, которая будет выступать обработчиком событий, а интерфейсом будет служить панелька в ворде.
  Так никогда ещё не делал, прошу помочь кто что знает.

--------------------
пьяный русский кодер практически непобедим
PM MAIL   Вверх
Albinos_x
Дата 3.10.2006, 22:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 15
Всего: 108



Цитата(Insert @  3.10.2006,  21:49 Найти цитируемый пост)
1. мне надо создать панельку в ворде. которая будет содержать элементы формы, сombobox,checkbox и т.д


Цитата(Albinos_x @  2.10.2006,  23:15 Найти цитируемый пост)
там модно назначать различные типы добавляемых объектов, от Edit, ComboBox, Button (редыдущие три названия для понятности в Своей интерпритации), Activex,

хотя думаю, что лучше через Activex

Цитата(Insert @  3.10.2006,  21:49 Найти цитируемый пост)
2. при взаимодействии с компонентами на этой панели, надо чтобы события обрабатывались в моей программе запущенной в фоновом режиме(или может можно как нибудь впихнуть все процедуры в саму панельку? тока без бейсика)


Цитата(Albinos_x @  2.10.2006,  23:15 Найти цитируемый пост)
можно сделать кнопку в Activex и её добавлять, соответственно добавить свои действия на событие нажатие этой кнопки в самом  Activex


Цитата(Insert @  3.10.2006,  21:49 Найти цитируемый пост)
3. как сделать так что при запуске ворда запускалась и моя программа, которая будет выступать обработчиком событий, а интерфейсом будет служить панелька в ворде

Activex

Добавлено @ 22:09 
http://forum.vingrad.ru/index.php?act=Sear...ex&skipped=


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
Insert
Дата 3.10.2006, 22:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 13.4.2006

Репутация: нет
Всего: 1



Хорошо допустим ActiveX, у меня с ним дела не лучше чем остальным smile , т.е никогда в глаза не видел,
Если его использовать, то:
1. надо ли его регистрировать в системе как то?
2. какие нибудь библиотеки нужны. если да то какие и как подключать?
3. придется писать свой компонент или программа будет выглядеть в виде небольшой формочки в ворде, как отдельно приложение(что не хотелось бы)?
4. http://www.piter.com/chapt.phtml?id=978594723149 читал, но если будет ещё информация конкретно, то прошу напишите, там я вскользь увидел синтаксис бейсика, если он обязательно должен использоваться при работе программы, то тоже непойдет.
5. вроде все
6.спасибо  smile  smile 
--------------------
пьяный русский кодер практически непобедим
PM MAIL   Вверх
Albinos_x
Дата 4.10.2006, 07:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 15
Всего: 108



1. надо, пример есть в http://www.drkb.ru/
2. нет, можно обойтись стандартным набором... в принципе в статье по указанной ссылке описан процесс содния ActiveX
3. зачем формой... можно отдельными контролами...
4. Другой инфы я ещё не видел, а код на бейсике приведен для примера...



--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
  
Закрытая темаСоздание новой темы Создание опроса
Правила форума "Delphi: ActiveX/СОМ/CORBA"

Rrader
Girder

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Delphi
  • Вопросы по SQL и вопросы по базам данных, не связанные с Delphi, задавать здесь

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Rrader, Girder.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: ActiveX/СОМ/CORBA | Следующая тема »


 




[ Время генерации скрипта: 0.0486 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.