ПроектыФорумУтилиты

Высокоуровневая библиотека CrystalLUA. Delphi + Lua (3 стр)

Страницы: 1 2 3 4 515 Следующая »
#30
16:35, 4 мая 2011

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;
// здесь Адрес Волуктион(я ево так називаю),если нада другие какиета процедури/функции ,говорите :)

#31
16:36, 4 мая 2011

DevilDevil
> мне кажется ошибка в 15й строке
LuaPro.RegClass(TGLSphere);  //здесь?

#32
16:54, 4 мая 2011

fhntv24
zzz  пиши плиз английские слова по английски а то по-русски да еще с укр акцентом ^___^

#33
17:02, 4 мая 2011

fhntv24

>LuaPro.RegClass(TGLSphere); //здесь?
это шутка такая
про 15 строку

fhntv24
предлагаю убрать весь лишний код и прислать мне минимальный пример, в котором выдаётся эксепшн
всё через личку. см первый пост

функция в данном случае не возвращает результата. возвращать результат она должна если сделать return x например
конструкторы, как и все методы должны вызываться через скобки (local x = TLC.Create() например)
почему эксепшн возникает - я хз

>а как щоб,например,виполнил одну функцию с одново файла,и еще одну,но з со вторового?
вызываешь LoadScript(FileName) для одного и того же экземпляра TLua


P.S.
кстати если версия Delphi >= 2009, то работать тоже не должно !

#34
17:24, 4 мая 2011

vj_antonio
я з Украини.
DevilDevil
у меня там етто било,просто сюда не виложил.той версии файла нету,но у меня бил return true;

#35
17:58, 4 мая 2011

fhntv24
дык это понятно)

Прошло более 1 года
#36
17:19, 15 авг 2012

Поздравляю пользователей библиотеки с очередным выпуском релиза (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 или по имейлу. Благодарю всех за содействие и положительные отзывы.

#37
18:03, 15 авг 2012

Внимание

В октябре я планирую вновь уделить достаточно времени, чтобы ещё серьёзнее проработать библиотеку. Не смотря на широкие возможности библиотеки сегодня - доработать ещё есть что, и работать нужно много. Вот к примеру список пунктов, которые можно реализовать:

Самые важные на мой взгляд изменения я уже включил в Mind-карту (открыть можно например в MindManager Viewer). Как вы видите - работы достаточно. Чисто теоретически - всё это я могу реализовать лично. Но как вы знаете, теория часто расходится с практикой ). Поэтому в данный момент я активно ищу единомышленников(на русскоязычных ресурсах), кто заинтересован в качественной связке Lua+Delphi. От вас мне нужна реальная помощь. В тестировании, разработке, идеях, да просто моральной поддержке. Кто хочет - могу дать кошелёк - можете поддержать финансово.

Вплоть до середины октября активно принимаю от вас сообщения по личной переписке, имейлу, аське с предоженными идеями и себя в качестве помощников. Можете отписывать здесь, только пожалуйста, поменьше флуда.

Всегда ваш, Devil
у нас всё получится ;)

#38
18:13, 15 авг 2012

дико плюсую за:


  • уметь читать скрипты не только в кодировке Ansi, но так же и в кодировках utf-8, utf-16, utf-16be
  • полная поддержка Unicode.
  • поддержка событий: вызов с параметрами, указание в качестве события функцию в скрипте
  • полная поддержка lua-таблиц на нативной стороне. Сейчас можно только если таблица является аргументом функции и (если не ошибаюсь) - через lua-ссылку
  • :)

    Автор молодец!

    #39
    12:44, 18 сен 2012

    Стоит выложить проект например на google.code, а то это как-то не серьезно.

    #40
    13:13, 18 сен 2012

    DevelS

    посмотрим.

    #41
    16:58, 18 сен 2012

    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'
    и т.д...
    Как можно запустить на этих версиях делфи?
    Спасибо!

    #42
    17:03, 18 сен 2012

    error911

    только в следующем релизе
    см "Введение" документации или этот пост

    #43
    7:48, 21 сен 2012

    Полезная вещь, спасибо друг.

    #44
    9:30, 21 сен 2012

    R1mush

    пожалуйста. присоединяйся к разработке

    Страницы: 1 2 3 4 515 Следующая »
    ПроектыФорумУтилиты

    Тема в архиве.