Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.05.01;
Скачать: [xml.tar.bz2];

Вниз

eval() в паскале   Найти похожие ветки 

 
fccczaa   (2003-04-15 17:48) [0]

Каков аналог eval() в Дельфи?


 
DiamondShark   (2003-04-15 17:49) [1]

Никакой.


 
fccczaa   (2003-04-15 17:57) [2]

а как быть тогда?


 
Anatoly Podgoretsky   (2003-04-15 18:07) [3]

Написать, раз нужно
Поискать если не можно сделать


 
DiamondShark   (2003-04-15 18:10) [4]


> fccczaa (15.04.03 17:57)
> а как быть тогда?


Смотря для чего. Задача какая?


 
Fiend   (2003-04-15 18:21) [5]

То fccczaa:
eval это насколько я помню ВБ или Жаба?
Так вы не путайте скриптовой язык с Паскалем. Ибо те Интерпретируют строки текста передвыполнением, а Паскаль компилирует (не совсем точно конечно).
Выход найти парсер выражений или интерпретатор паскаля, их масса


 
fccczaa   (2003-04-15 18:28) [6]

Ну вот, например, есть форма с кучей TEdit, TMemo, TComboBox"ов. Есть задача проверить значение каждого из полусотни этих полей, сохранить данные в массиве, а затем экспортировать с помощью xmlrpc. Очень не хотелось бы обрабатывать каждое поле "ручками", неплохо было бы создать, к примеру, массив с названиями полей и делать все это в цикле... или я слишком избалован теми "скриптовыми языками", и придется набивать три километра кода?


 
Fiend   (2003-04-15 18:31) [7]

То fccczaa:
Вовсе не три.:)
всего лишь метров десять. Можно в цикле перечислить все элементы формы, проверить чего там нужно ну и т.д и т.п.


 
Serginio   (2003-04-15 19:47) [8]

Переходи на NET. RTTI может тебе помочь и Components.


 
Serginio   (2003-04-15 19:48) [9]

Вернее Controls and ControlCount and AS IS.


 
Palladin   (2003-04-15 19:51) [10]

нужно просто немножко подумать и поизучать справку


 
fccczaa   (2003-04-15 20:42) [11]

И немножно уже думал, и справку эту дурацкую изучал (сколько себя помню - в детстве баловался турбопаскалем - фиг найдешь чего надо у борланда в справке с первого раза)...

Ладно, всем большое спасибо. Придется все же заняться мазохизмом, раз приспичило на дельфях писать :)


 
Palladin   (2003-04-15 21:29) [12]

кто ищет, тот найдет

и в борландовской справке я находил все максимум на третьем переходе...


 
LEON   (2003-04-15 23:31) [13]

может TForm.FindComponent поможет?


 
Babay   (2003-04-16 06:10) [14]

Предположим едиты имеют имена Edit1,Edit2.... Edit(N)
тогда так
Var c:TComponent;


For i=1 to N do begin
C:=FindComponent("Edit"+Inttostr(i));
If TEdit(c).text=<чего то там> then begin
.....
end;
end;

если имена разные но нужно проверить все эдиты, memo и т.д. на форме то так

For i:=0 to ComponentCount-1 do begin
if Components[i] is TEdit then begin
if TEdit(Components[i]).text =<чего то там> then begin
.....
end;
if Components[i] is TMemo then begin
if TMemo(Components[i]).text =<чего то там> then begin
.....
end;
..... и т.д.
end;
end;

ну вообщем вариаации разные думаю смысл обработки ясен


 
DiamondShark   (2003-04-16 11:23) [15]


> fccczaa (15.04.03 18:28)


Ну коли избалован скриптовыми языками, так и не стоит отказываться. Active Script легко подключается к любой программе.

Для начала можно глянуть мою статью
http://www.delphikingdom.com/helloworld/activescript.htm


 
Mystic   (2003-04-16 13:32) [16]

> Придется все же заняться мазохизмом

Имхо, садизм писать программы с использованием eval для тех, кто потом их будет разбирать.



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

Форум: "Потрепаться";
Текущий архив: 2003.05.01;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.007 c
3-432
_MAX_
2003-04-11 17:18
2003.05.01
Вместительность DBGrid


1-590
Oleg1
2003-04-18 15:03
2003.05.01
Free Report 3.2


1-558
Barlok
2003-04-17 18:43
2003.05.01
Вопрос по массивам?


8-654
OxOTHuK
2003-01-25 23:26
2003.05.01
Слои


14-736
silenser
2003-04-14 09:27
2003.05.01
Отчет в WORDе





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский