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

Вниз

dream scripter   Найти похожие ветки 

 
Ярыч ©   (2004-03-19 13:16) [0]

можно ли создавать при помощи DS формы и елементы на них?
скиньте простенький скриптик


 
Юрий Зотов ©   (2004-03-19 13:28) [1]

Какой именно scripter? Если Delphi, то все как в Delphi и делается. Естественно, в проект должны быть включены файлы импорта, а нужные классы должны быть зарегистрированы.


 
Ярыч ©   (2004-03-19 14:52) [2]

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


 
Юрий Зотов ©   (2004-03-19 15:05) [3]

Новую форму регистрировать не надо - надо регистрировать ее предка. А дальше обычный Create(New).


 
Ярыч ©   (2004-03-23 12:33) [4]

а есть ли возможность в внешнем скрипте вызывать предопределенную процедуру?
если конкретно, то не получается обработать OnClick по элементу
приходится создавать процедуру, которая вызывается по клику на любом элемента, а далее ловится сендер и обрабатывается уже во внешнем скрипте клик на нужном элементе
так вот вызвать эту процедуру (для любого клика) не получается

сделано так: все таки у меня создана голая форма на которую я размещаю нужные элементы во внешнем скрипте, и которым даю процедуру на OnClick по обработке любых кликов


 
Юрий Зотов ©   (2004-03-23 12:50) [5]

Файлы импорта сгенерированы?


 
Ярыч ©   (2004-03-23 12:53) [6]

да...


 
Юрий Зотов ©   (2004-03-23 13:41) [7]

Уточните задачу - требуется из внешнего скрипта вызвать процедуру, зашитую в EXE? Или просто сделать скриптовой обработчик OnClick?


 
Ярыч ©   (2004-03-23 15:24) [8]


> Уточните задачу - требуется из внешнего скрипта вызвать
> процедуру, зашитую в EXE? Или просто сделать скриптовой
> обработчик OnClick?


нужно сделать скриптовый обработчик onClick
кстати, необходимость есть и в вызове процедуры зашитой в EXEшнике, т.к. некие задачи потребуют от меня этих действий


 
Юрий Зотов ©   (2004-03-23 16:33) [9]

> Ярыч ©   (23.03.04 15:24) [8]

> нужно сделать скриптовый обработчик onClick

Возможно, я уже подзабыл (игрался с DC уже довольно давно), но, вроде бы, такие обработчики делаются обычным образом, без всяких фокусов. Просто пишем в скрипте обработчик и цепляем его к событию. Посмотрите, как это сделано в их демках.


 
Ярыч ©   (2004-03-23 22:26) [10]

мой вариант такой:
1. привязка к пустой форме
DCS.AddObjectToScript(ShablonFrm, "ShF", False);
ShablonFrm - имя формы
ShF - алиас формы для обращения к ней из внеш. скрипта
DCS.CallNoParamsMethod("StartScript");
StartScript - вызываемая процедура из внеш. скрипта

2. процедура у пустой формы для обработки любых кликов (не полная)

procedure TShablonFrm.AnyClick(Sender: TObject);
begin
with Sender as TButton do
 begin
   showmessage(name); // проверка имени элемента
   MainFrm.DCS.DispatchMethod(Name+"OnClick",[Name]);
 end;
end;


3. а теперь и сам внеш. скрипт

procedure StartScript;
var
 Button1: TButton;
begin
 Button1 := TButton.Create(ShF);
 with Button1 do
 begin
   Left := 1;
   Top := 1;
   Width := 75;
   Height := 25;
   Caption := "Button1";
   TabOrder := 0;
   Parent := ShF;
   OnClick := ShF.AnyClick;
 end;
 ShF.ShowModal;
 Button1.Free;

end;
procedure Button1OnClick(Sender: String);
begin
 ShowMessage("Ok!");
end;


Итог:
1. Кнопка создается (и это хорошо)
2. На строке внеш. скрипта (OnClick := ShF.AnyClick) выдается, что процедура не определена или не найдена (что в данном случае одно и тоже)

ну и соответственно, на правильном ли я пути?


 
Юрий Зотов ©   (2004-03-24 00:42) [11]

Блин, практически все уже забыл... Пожалуй, единственное, что могу посоветовать - это все же посмотреть в их демки. Сорри...


 
Ярыч ©   (2004-03-24 09:58) [12]

Спасибо Вам, Юрий.
Что вслушали, а выкладывая проблему - начинаешь уже и сам понимать тонкости...
Как решу эту проблему, постараюсь ее обрисовать, мало ли кому пригодится.



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

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

Наверх




Память: 0.47 MB
Время: 0.041 c
9-1065350516
IP
2003-10-05 14:41
2004.04.11
Как задать цветовой ключ?


4-1075662051
DillerXX
2004-02-01 22:00
2004.04.11
Файло...


7-1079636270
Константин
2004-03-18 21:57
2004.04.11
Автозапуск


6-1074180747
Mister_First
2004-01-15 18:32
2004.04.11
Передача файлов по сети без клиента и сервера


1-1082739764
Alex-21
2004-04-23 21:02
2004.04.11
TImage & TImageList





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский