我如何在Smart Mobile Studio中的设计时使用活动?

Jak*_*ays 6 javascript delphi smart-mobile-studio

我错过了什么吗?我两天前购买了Smart Mobile Studio,并一直在尝试它的功能.我希望它至少可以模拟delphi的事件模型.没有?

我不应该能够单击一个控件并访问一个事件选项卡(就像我们对属性所做的那样),并添加一个delphi样式事件,例如OnClick for Button(然后将其转换为javascript事件) .我希望不仅可以在我的表单单元中看到OnClick事件,还可以看到按钮.似乎没有对按钮的引用.

我错过了什么?

我知道如何在运行时做到这一点,但我仍然无法在设计时弄清楚如何做到这一点.有人可以帮帮我吗?

运行...

unit Form1;

interface

uses w3system, w3ctrls, w3forms, w3application;

type
 TForm1=class(TW3form)
 private
 { Private methods }
 FButton : TW3Button;
 protected
 { Protected methods }
 Procedure InitializeObject;override;
 Procedure FinalizeObject;override;
 Procedure StyleTagObject;override;
 end;

Implementation

Procedure TForm1.InitializeObject;
 Begin
 inherited;
 FButton:=TW3Button.Create(Self);
 FButton.Caption:=’Load’;
FButton.OnClick:=procedure (Sender : TObject)
 begin
 //do something
 end;
 End;

Procedure TForm1.FinalizeObject;
 Begin
 inherited;
 End;

Procedure TForm1.StyleTagObject;
 Begin
 inherited;
 StyleClass:=’TW3CustomForm’;
 End;

end.
Run Code Online (Sandbox Code Playgroud)

Jon*_*den 4

截至撰写本文时,智能 IDE 不支持委托(或事件对象)的代码生成。但这是计划添加的。

重要的是要理解 smart 并不想成为另一个 delphi。这会通过施加限制来破坏 object pascal 和 javascript 的丰富性。相反,该产品的核心功能是用 object pascal 替换 javascript - 这反过来又增加了 javascript(如接口、继承等)。

目前,编写移动应用程序有点像魔法。Freepascal 用户仅通过代码完成工作,C# 开发人员也是如此(尽管我们过去常常连接到 xcode 设计器 .nib 文件),当然还有 javascript 开发人员。智能移动虽然确实需要您编写更多代码,但仍然远远领先于普通 JavaScript 开发人员。

节省时间的因素是您不必使用 JavaScript 来编写所有内容,而是使用您已经了解和喜爱的语言来编写。