Может ли прога открыть и вывести на экран doc-файл со встроенными в него объектами (формулами)? Если может, то как? Расскажите пожалуйста, очень нужно.
И еще просьба, дайте ссылку на стандартные процедуры и функции в Дельфе. Заранее спасиибо!
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.
| Айра |
Сообщение
#1
|
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
Начала работать в Delphi, так что буду мучить глупыми и неочень вопросами...
Может ли прога открыть и вывести на экран doc-файл со встроенными в него объектами (формулами)? Если может, то как? Расскажите пожалуйста, очень нужно. И еще просьба, дайте ссылку на стандартные процедуры и функции в Дельфе. Заранее спасиибо! |
![]() ![]() |
| klem4 |
Сообщение
#2
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
DRKB -> Работа с MS Word
Но про импорт формул я там ничего не вижу, да и вообще как-то мне это маловозможным кажется ... Цитата И еще просьба, дайте ссылку на стандартные процедуры и функции в Дельфе Экхм, купи себе учебник хороший -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
| мисс_граффити |
Сообщение
#3
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
Цитата Но про импорт формул я там ничего не вижу, да и вообще как-то мне это маловозможным кажется ... через OLE-контейнер можно попробовать.... сейчас поэкспериментирую, если удастся - расскажу. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
| volvo |
Сообщение
#4
|
|
Гость |
Цитата через OLE-контейнер можно попробовать.... Можно не пробовать, ибо все работает... На Сурсах мы как-то эту тему на 5 страницах развивали, там чего только через OLE не делали с этими формулами... |
| мисс_граффити |
Сообщение
#5
|
|||
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
Сорри за нарушение правил...
Но только что выяснила, как выглядит OLE-контейнер физически:
-------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
|||
| Айра |
Сообщение
#6
|
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
Цитата спрашивай конкретно функции для работы с чем тебя интересуют ? Для работы с числами (целыми, вещественными), чтения и вывода чисел (из/в Edit)... Нашла на диске про OLE, буду разбираться, но ссылку все равно жду с нетерпением... |
| мисс_граффити |
Сообщение
#7
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
Цитата Для работы с числами (целыми, вещественными), чтения и вывода чисел (из/в Edit)... Для чтения и вывода... Дело в том, что свойство Edit'a Text - это строка. Соответственно, ее надо преобразовать в число. Для этого можно использовать либо паскалевский val, либо такие конструкции, как StrToInt для целых и StrToFloat для вещественных. И то, и другое - функции, поэтому: a: integer; Для вывода - наоборот: FloatToStr и IntToStr (либо паскалевский Str) Для ввода целых чисел иногда удобнее использовать SpinEdit (закладка Samples палитры компонентов), свойство Value - это целое число. А что еще ты хочешь с числами делать? Цитата Юля, кстати, а ты знаешь, что OLE (Object Linking and Embedding) переводится на русский, как ПиВО (Подключение и Внедрение Объектов)? Знаю, конечно Сообщение отредактировано: мисс_граффити - -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
| Айра |
Сообщение
#8
|
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
Спасибо!)))))))
Цитата А что еще ты хочешь с числами делать? Размечталась, что есть еще функции и для возведения в степень и т.п... Наивная... А на счет doc'a я так поняла, что файл надо будет открывать в OleContainer'e. Если нет, то где и как? p.s. кстати OLE - это почти в честь меня... Сообщение отредактировано: Айра - |
| volvo |
Сообщение
#9
|
|
Гость |
Цитата Размечталась, что есть еще функции и для возведения в степень и т.п... Подключаешь модуль Math и радуешься жизни: Power, IntPower, ... |
| Айра |
Сообщение
#10
|
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
Благодарствую! А про OLE я правильно поняла?
|
| volvo |
Сообщение
#11
|
|
Гость |
Да, работай через OLEContainer...
|
| Айра |
Сообщение
#12
|
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
Ураааааааа! Я это сделала!
А вот теперь думаю. Моя прога, как я раньше хотела, должна была по нажатию кнопки открыть doc-файл (их много), но может обойтись без файлов, так все загнать? Посоветуйте, пожалуйста. И еще. В OLEContainer'e есть что-нибудь вроде прокрутки (я не нашла, а текст большой, неудобно), и кнопки и Edit'ы на нем помещать ведь можно? |
| volvo |
Сообщение
#13
|
|
Гость |
|
| Айра |
Сообщение
#14
|
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
Спасибо!!! Вы меня спасли!!!
p.s. Надеюсь большую часть до завтра сделаю, а тогда недельку мне еще выделят... Сообщение отредактировано: Айра - |
| мисс_граффити |
Сообщение
#15
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
А что надо сделать, если не секрет? Какое глобальное задание?
-------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
| Айра |
Сообщение
#16
|
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
Извиняюсь, но за моей дурной головой, всему покоя нет...
Цитата OleContainer1.DoVerb(1); дает доступ к редактированию текста, а в прог-ме это лишнее.В моей книжке написано про ScrollBars (ssVertical), но в OLE я его не нашла. Есть что-нибуть похожее с этой штукой (скроллер вроде называется, забыла). Сообщение отредактировано: Айра - |
| volvo |
Сообщение
#17
|
|
Гость |
Нет в TOleContainer-е полос прокрутки...
Но твою проблему можно решить - попробуй сделать так: procedure TForm1.Button1Click(Sender: TObject);и отредактировать текст Я хочу посмотреть, как это у тебя получится... Однако, прокрутка по-преднему работает... Можно еще поотключать всякие ненужные менюшки/кнопочки, если надо - скажи, какие именно, я покажу как они отключаются... |
| Айра |
Сообщение
#18
|
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
Цитата А что надо сделать, если не секрет? Какое глобальное задание? Помнишь я просила натолкнуть на мысль по т/в - это сюда же. Вобщем должно получиться что-то вроде программы-учебника, в которой помимо теории и практики есть "мини-приложения", где можно ввести свои цифры, что-то посчитать и т.п. А я (впрочем как и многие другие) начала все делать почти в последний момент... Цитата Я хочу посмотреть, как это у тебя получится... Спасибо, volvo! Сейчас начну, как что-то сделаю выложу, но не суди строго... |
| Айра |
Сообщение
#19
|
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: 25 |
Вчера ночью (сегодня почти утром
Вот что у меня получилось: Код unit proba; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, OleCtnrs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; OleContainer1: TOleContainer; OpenDialog1: TOpenDialog; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var ev: variant; begin if OpenDialog1.Execute then begin OleContainer1.CreateObjectFromFile(OpenDialog1.FileName, False); OleContainer1.DoVerb(ovShow); ev := 2; OleContainer1.OleObject.Protect(ev); { <--- !!! } end; end; end. Большая часть кнопок не работает, но если опять попытаться открыть файл (еще раз надовить на кнопку), а потом нажать отмена, то картина получится следующей: Потом помучалась еще над своей прогой ('работают' только первые 4 раздела), получилось следующее (у меня скроллер на форме появлялся сам, когда запускала ее):
GlavnoeMenu.pas ( 653 байт )
Кол-во скачиваний: 657
vvedenie.pas ( 358 байт )
Кол-во скачиваний: 686
literarura.pas ( 360 байт )
Кол-во скачиваний: 682
TeoriyaVer.pas ( 1.47 килобайт )
Кол-во скачиваний: 658Вроде работает, но я особо над ней не издевалась... Жду различных отзывов... p.s. если как-то неправильно вставила файлы (или не те, что не исключено), то научите?... Сообщение отредактировано: Айра - |
| volvo |
Сообщение
#20
|
|
Гость |
А можно весь проект заархивировать, и выложить (без EXE и DCU-файлов)? Чтобы можно было откомпилировать и посмотреть именно то, что есть у тебя ... Желательно с DOC-файлами ...
|
![]() ![]() |
|
Текстовая версия | 4.11.2025 6:14 |