DevilDevil
1)простите,забил пока читал 2 страници и програмировал.
2)function l(a)
local x = TLC;
end;
(я пробовал еще с x.create;)
3)а как щоб,например,виполнил одну функцию с одново файла,и еще одну,но з со вторового?
4)я не думал,що Adress Voluction ето нормально :) LuaPro.LoadScript('loadFS.lua');
//здесь или
f := LuaPro.Call('l', [1]).ForceBoolean;
// здесь Адрес Волуктион(я ево так називаю),если нада другие какиета процедури/функции ,говорите :)
DevilDevil
> мне кажется ошибка в 15й строке
LuaPro.RegClass(TGLSphere); //здесь?
fhntv24
zzz пиши плиз английские слова по английски а то по-русски да еще с укр акцентом ^___^
fhntv24
>LuaPro.RegClass(TGLSphere); //здесь?
это шутка такая
про 15 строку
fhntv24
предлагаю убрать весь лишний код и прислать мне минимальный пример, в котором выдаётся эксепшн
всё через личку. см первый пост
функция в данном случае не возвращает результата. возвращать результат она должна если сделать return x например
конструкторы, как и все методы должны вызываться через скобки (local x = TLC.Create() например)
почему эксепшн возникает - я хз
>а как щоб,например,виполнил одну функцию с одново файла,и еще одну,но з со вторового?
вызываешь LoadScript(FileName) для одного и того же экземпляра TLua
P.S.
кстати если версия Delphi >= 2009, то работать тоже не должно !
vj_antonio
я з Украини.
DevilDevil
у меня там етто било,просто сюда не виложил.той версии файла нету,но у меня бил return true;
fhntv24
дык это понятно)
Поздравляю пользователей библиотеки с очередным выпуском релиза (ver 15/08/2012), качать там же
Особую благодарность хочу выразить Сергею Коновалову за помощь в его подготовке
Изменения не особо существенные, но имеют место быть:
Инициализация по таблице - это концепция применимая для структур и экземпляров классов. Удобный способ изменить сразу несколько свойств/полей в синтаксисе Lua. Использование "инициализации по таблице" сейчас возможно 4мя способами:
1) Через метод Assign().
Метод Assign() является стандартным для всех сложных типов. Обычно он принимает переменную соответствующего типа. Теперь в качестве аргумента можно задать инициализирующую таблицу. Например так:
Form1.Assign( {Caption="Text", Position=poScreenCenter, Color=0x007F7F7F} )
2) "Опуская" метод Assign().
Я считаю метод Assign() достаточно читабельным. Однако вы в случае инициализации по таблице можете его "опустить"
Form1( {Caption="Text", Position=poScreenCenter, Color=0x007F7F7F} ) -- тот же эффект
3) Простое описание таблицы.
Где-то в интернете я видел такое использование. И возможно вы захотите использовать так же
Form1 {Caption="Text", Position=poScreenCenter, Color=0x007F7F7F} -- всё тот же эффект
4) Последний аргумент конструктора.
Инициализирующую таблицу можно указать в качестве последнего аргумента конструктора. Например так:
local Button = TButton.Create(Form1, {Parent=Form1, Caption="Click me", Left=281, Top=15})
-------------------------------
Концепция инициализации по таблице предусматривает иерархическую работу.
Т.е. вложенные структуры и экземпляры класса так же могут быть инициализированы.
Например:
Form1 { Caption="Text"; Position=poScreenCenter; Color=0x007F7F7F; Button1={Caption="Click me :)", Enabled=false} }
Внимание
Данная концепция применима только в том случае, если порядок изменения "свойств" не важен. Дело в том, что данные в таблицах Lua хранятся не в том порядке, котором вы их указали. Например в данном случае порядок инициализации будет такой: Caption, Button1.Caption, Button1.Enabled, Color, Position
-------------------------------
P.S. по прежнему не исключаю возможности ошибок. Поэтому просьба как и ранее в случае некорректной работы библиотеки - сообщать мне: в личке, icq или по имейлу. Благодарю всех за содействие и положительные отзывы.
Внимание
В октябре я планирую вновь уделить достаточно времени, чтобы ещё серьёзнее проработать библиотеку. Не смотря на широкие возможности библиотеки сегодня - доработать ещё есть что, и работать нужно много. Вот к примеру список пунктов, которые можно реализовать:
Самые важные на мой взгляд изменения я уже включил в Mind-карту (открыть можно например в MindManager Viewer). Как вы видите - работы достаточно. Чисто теоретически - всё это я могу реализовать лично. Но как вы знаете, теория часто расходится с практикой ). Поэтому в данный момент я активно ищу единомышленников(на русскоязычных ресурсах), кто заинтересован в качественной связке Lua+Delphi. От вас мне нужна реальная помощь. В тестировании, разработке, идеях, да просто моральной поддержке. Кто хочет - могу дать кошелёк - можете поддержать финансово.
Вплоть до середины октября активно принимаю от вас сообщения по личной переписке, имейлу, аське с предоженными идеями и себя в качестве помощников. Можете отписывать здесь, только пожалуйста, поменьше флуда.
Всегда ваш, Devil
у нас всё получится ;)
дико плюсую за:
:)
Автор молодец!
Стоит выложить проект например на google.code, а то это как-то не серьезно.
DevelS
посмотрим.
Delphi 2010 и RAD Studio не работает.
Ошибка компиляции пустого приложения сразу после подключения CrystalLUA в uses.
904: onst LowerChars : array[char] of char = (#$00,#$01.... //[DCC Error] CrystalLUA.pas(920): E2072 Number of elements (256) differs from declaration (65536)
928: raise Self.Create(Message) at CodeAddr; //[DCC Warning] CrystalLUA.pas(928): W1057 Implicit string cast from 'AnsiString' to 'string'
и т.д...
Как можно запустить на этих версиях делфи?
Спасибо!
error911
только в следующем релизе
см "Введение" документации или этот пост
Полезная вещь, спасибо друг.
R1mush
пожалуйста. присоединяйся к разработке
Тема в архиве.