Вверх ↑
Администрация
Ответов: 15295
Рейтинг: 1519
#1: 2011-05-31 19:59:08 ЛС | профиль | цитата
когда будет готов базис, отталкиваясь от которого можно уже наращивать элементную базу (путем портирования или написания в нуля)
------------ Дoбавленo в 19.59:
для сравнения:

вот так выглядит код кнопки в пакете Windows

#pas
unit hiButton;

interface

uses Windows,Kol,Share,Win;

{$I share.inc}

type
THIButton = class(THIWin)
private
procedure _OnClick(Obj:PObj);
public
_event_onClick:THI_Event;
_prop_Data:TData;
_prop_Caption:string;
_prop_DefaultBtn:boolean;

procedure Init; override;
procedure _work_doCaption(var _Data:TData; Index:word);
end;

implementation

procedure THIButton.Init;
begin
Control := NewButton(FParent,_prop_Caption);
Control.OnClick := _OnClick;
Control.Style := Control.Style or BS_MULTILINE;
inherited;
end;

procedure THIButton._work_doCaption;
begin
Control.Caption := ToString(_Data);
end;

procedure THIButton._OnClick;
begin
_hi_OnEvent_(_event_onClick,_prop_Data);
end;

end.

а вот так в пакете Lazarus под RTCG

#hws
include("WinControl-proc")

func init
addWidget('TButton')
include("WinControl-init")
sys.set_undef_field('Caption')
sys.add_event('onClick', this.props("Data").value)
end

func doCaption(text)
blk.println(this.codename + '.Caption := ', text, ';')
end
карма: 27
0