Форум: "Компоненты";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];
ВнизОбращение к Delphi Найти похожие ветки
← →
velial (2004-08-25 16:09) [0]Вопрос, как можно обратится к Delphi, чтобы узнать
(при запущенном Делфи) что именно сейчас отображается в окне исходного кода ?
← →
oldman © (2004-08-25 16:18) [1]Я опупеваю...
А ЗАЧЕМ???
← →
Ega23 © (2004-08-25 16:22) [2]А ЗАЧЕМ???
А чтобы (порнушный_рассказ as TextFile) в IDE не открывали.
← →
Ega23 © (2004-08-25 16:22) [3]Удалено модератором
← →
Digitman © (2004-08-25 16:29) [4]
> velial (25.08.04 16:09)
считай что никак
← →
Digitman © (2004-08-25 16:33) [5]
> velial
но ты можешь сделать окно редактора исх.текста активным, передав ему фокус ввода, далее программно эмулируешь клавишные комбинации, приводящие к выделению текста и копированию его в клипборд, а затем просто обычным образом читаешь из клипборда скопированный туда самой Делфи текст
← →
Digitman © (2004-08-25 16:38) [6]
> velial
можешь еще поизвращаться и следующим образом (это будет более точный ответ на твой вопрос)
- делаешь окно активным
- эмулируешь нажатие Alt-PrintScrin, получаешь в клипборд графическое содержимое окна
- сохраняешь графику из клипборда в файл в формате bmp
- открываешь ФайнРидер и передаешь ему на распознавание этот файл, получаешь некоторое кол-во более-менее приемлемого по смыслу текста и еще геморрой
← →
Piter © (2004-08-25 16:41) [7]только вот смысл...
← →
oldman © (2004-08-25 16:41) [8]Можно еще проще :))))))))))))))
- делаешь окно активным
- читаешь текст с экрана, что бы узнать что именно сейчас отображается в окне исходного кода
← →
jack128 © (2004-08-25 16:45) [9]
>Digitman © (25.08.04 16:29) [4][Ответить]
>
>> velial (25.08.04 16:09)
>
>
> считай что никак
почему никак? Эксперты это наверника могут.
← →
Digitman © (2004-08-25 16:49) [10]
> jack128 © (25.08.04 16:45) [9]
могут.
но это ж из другой оперы)
эксперт работает в АП Делфи, а автору, очевидно, трэба заполучить это из произвольного текущего АП
← →
Rem (2004-08-25 17:03) [11]FindWindow();
GetWindowText();
← →
jack128 © (2004-08-25 17:04) [12]
> Digitman © (25.08.04 16:49) [10]
имхо, самый коректный способ решения этой задачи - написать эксперт, и пусть этот эксперт передает данные внешней проге.
← →
Юрий Зотов © (2004-08-25 17:05) [13]Можно сделать эксперт с возможностью доступа к нему "снаружи".
Скажем, простейший вариант: эксперт создает невидимое окно, которому можно послать WM_COPYDATA и в ответ получить все, что угодно.
← →
Юрий Зотов © (2004-08-25 18:07) [14]Сорри, наоборот, конечно. Внешняя программа посылает окну эксперта сообщение-запрос, в котором передает хэндл своего окна - приемника данных. В ответ эксперт шлет этому окну WM_COPYDATA.
← →
Piter © (2004-08-25 18:09) [15]только вот интересно зачем это нужно...
← →
velial (2004-08-26 09:49) [16]Попытаюсь рассказать зачем это нужно!
Т.к. писать коментарии к проекту иногда бывает очень много,
и функция в 20 строк превращается в 100 с коментариями
хотелось бы написать внешнюю прогу, которая будет отображать коментарии.
в исходном коде будет стоять некий хеш-указатель коментария
а в программе просмотра коментариев - уже сам коментарий.
причем хотелось бы, чтобы при прокрутке окна исходников в делфе и в проге коментариев показывались только те коменты, который щас видны в Делфе.
А на счет эксперта к Делфу - можете более подробно описать что это такое и как его написать ?
← →
Юрий Зотов © (2004-08-26 10:15) [17]> velial (26.08.04 09:49) [16]
> хотелось бы написать внешнюю прогу, которая будет отображать
> коментарии.
Почему именно внешнюю? Эксперт может САМ отображать комментарии, без всяких внешних прог. Так даже проще получится.
> А на счет эксперта к Делфу - можете более подробно описать что
> это такое и как его написать ?
\Delphi\Demos\ToolsAPI\ - там несколько примеров. Есть и в сети (ищите в поисковых машинах по словам Delphi, эксперт, OTAPI).
← →
Григорьев Антон © (2004-08-26 10:32) [18]Ещё об экспертах советую посмотреть здесь:
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=899
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=742
← →
Petr V. Abramov © (2004-08-28 15:42) [19]см. ToolsAPI.pas
Достать текст из редактора можно примерно так:
(((BorlandIDEServices as IOTAModuleServices).GetCurrentModule.GetModuleFileEditor(0)) as IOTASourceEditor) - получаем доступ к source editor`у текущего модуля
После этого работаем с - исходником CreateReader, CreateWriter и т.д.
Естественно, все делается с проверками - прежде, чем написатьas
пишемif supports(...
Страницы: 1 вся ветка
Форум: "Компоненты";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.036 c