Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Delphi

Выпуск № 89
от 06.04.2005, 01:00

Администратор:Калашников О.А.
В номере:Вопросов: 1, Ответов: 5


Вопрос № 19023: Я хотел узнать: 1) Есть ли функции переводящие строку, в которой записано математическое выражение, в какую-либо последовательность действий для компьютера. Если есть пожалуйста объясните как ей пользоваться. 2) Как вызвать функцию одной форм...

Вопрос № 19023
Я хотел узнать:
1) Есть ли функции переводящие строку, в которой записано математическое выражение, в какую-либо последовательность действий для компьютера. Если есть пожалуйста объясните как ей пользоваться.
2) Как вызвать функцию одной формы из другой формы.
3) Как работать с memo одной формы из другой формы.
Отправлен: 31.03.2005, 05:43
Вопрос задал: pnck (статус: Посетитель)
Всего ответов отправлено: 5

Отвечает: IUnknown
Здравствуйте, pnck!
1)как таковой нет... но что мешает написать... в принципе задачка довольно тривиальная...
2)точно также как из вложенного юнита...
в интерфейсной части одной формы описываешь функцию... (что типа function MyFunction(MyParametr) : Answer;)... далее в implementation творишь саму функцию...
после чего в Unit второй формы добавляешь имя своей формы...
итого у тебя должно быть что-то в таком духе
unit MyForm1;
interface
uses
нужные юниты
.....
.....
Здесь все что дельфи на делала... или ты сам ))
.....
.....
function MyFunction(MyParametr) : Answer;
implementation
function MyFunction(MyParametr): Answer;
begin
....
....
код твоей функции
....
....
end;
далее в той форме где надо вызвать функцию MyFunction
unit MyForm2
interface
uses
Window.... и куча других юнитов... StdCtrls, MyForm1;
3)аналогично... как и с функцией... только мемо должно быть описано в интерфейсной части юнита
Ответ отправил: IUnknown (статус: 1-ый класс)
Отправлен: 31.03.2005, 18:34
Оценка за ответ: 4
Комментарий оценки:
Спасибо, но хотелось бы услышить более полный ответна 1 часть!

Отвечает: Master135
Здравствуйте, pnck!
Начну отвечать с конца
3) Пусть Memo обьявлено в Form1 а используем его в модуле с Form2 Вызываем - Form1.Memo1()
2) Опять же таки Form1.вызов функции
Но тут есть одно важное примечание надо в списке подключаемых модулей объявлять у Form2-Form1 или наоборот.
1) Стандартной ф-ции скорее всего нет, может кто-то разработал какие-либо компоненты. Но это знаменитая программа, которую можно попытатся написать самому, отдельно выделяя в строке слова(по пробелам) а после этого обрабатываем каждое слово отдельно.
Ответ отправил: Master135 (статус: 3-ий класс)
Отправлен: 31.03.2005, 20:59
Оценка за ответ: 4
Комментарий оценки:
Спасибо!

Отвечает: Boriss
Здравствуйте, pnck!
То, что Вы называли в первом пункте, называется "интерпретатор"
В принципе, задача сводится к синтаксическому разбору строки. На эту тему есть много литературы. Если надо именно это, можно порекомендовать классическую уже работу Шильдта (Shildt) для Паскаля (по-моему, это его единственная крупная работа для Паскаля)
Компоненты можно посмотреть на:
http://bodiic.narod.ru/fortran.html
http://www.wosoft.ru/index.htm/c/168/f/0/p/3
и известный компонент PASCALC:
http://www.download.ru/russian/programs/20_14.htm
или
http://online.download.ru/details.ehtml?ProgramID=4756

Прикреплённый файл: Загрузить >>
Срок хранения файла на сервере RusFAQ.ru составляет 14 суток с момента отправки ответа.

Ответ отправил: Boriss (статус: Профессор)
Отправлен: 02.04.2005, 16:37
Оценка за ответ: 5
Комментарий оценки:
Супер, хоьб и не получил ответа на два последних вопроса!!!

Отвечает: sir henry
Здравствуйте, pnck!
1. Встроенных функций в Дельфи точно нет. :) А вот найти какой-либо компонент для этого дела - запросто:
www.torry.net
www.delphimaster.ru
и т.п.
2. Спокойно работайте, только не забудте название этой функции объявить в разделе IMPLEMENTATION
3. Для этого надо указать в какой форме это мемо находиться, например Вы работаете в форме MyForm2, тогда, чтобы обратиться к мемо из MyForm1 сделайте так:
MyForm1.Memo1.Lines.Add(Строка); {Добавление строки в мемо на форме 1 из формы 2}
Ответ отправил: sir henry (статус: Профессор)
Отправлен: 04.04.2005, 09:10
Оценка за ответ: 4
Комментарий оценки:
Большое, пребольшое спасибо!

Отвечает: Vj
Здравствуйте, pnck!
2) Если 2-я форма называется Form2, а функция funct то:
Form2.funct(параметры);
3) Если 2-я форма называется Form2, а memo - Memo1 то:
например Form2.Memo1.Add('Test...');
Ответ отправил: Vj (статус: Студент)
Отправлен: 05.04.2005, 00:55
Оценка за ответ: 4
Комментарий оценки:
Спасибо!


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, RusFAQ.ru, Россия, Москва. Все права защищены.
Идея, дизайн, программирование, авторское право: Калашников О.А.


http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.delphiplus
Отписаться

В избранное