界面库
修改目录结构
This commit is contained in:
@@ -1,18 +0,0 @@
|
||||
array(
|
||||
"name":"e_listbox",
|
||||
"version":"1.2.0",
|
||||
"dir":(
|
||||
),
|
||||
"files":(
|
||||
"e_listboxmain":(
|
||||
"name":"e_listboxmain",
|
||||
"type":"form"
|
||||
),
|
||||
"e_listbox":(
|
||||
"name":"e_listbox",
|
||||
"type":"tsl"
|
||||
)
|
||||
),
|
||||
"mainform":"e_listboxmain",
|
||||
"time":"2021-02-03 11:10:32"
|
||||
)
|
||||
@@ -1,6 +0,0 @@
|
||||
//工程E_ListBox界面库主程序
|
||||
uses tslvcl; //引入界面库
|
||||
app := InitializeApplication(); //获得界面管理器
|
||||
app.CreateForm(class(E_ListBoxmain),fm); //构造主窗口
|
||||
fm.show(); //显示主窗口
|
||||
app.run(); //开始消息循环
|
||||
@@ -1,94 +0,0 @@
|
||||
type E_ListBoxmain=class(tdcreateform)
|
||||
uses tslvcl;
|
||||
listbox1:tlistbox;
|
||||
btn1:tbtn;
|
||||
btn2:tbtn;
|
||||
btn3:tbtn;
|
||||
btn4:tbtn;
|
||||
btn5:tbtn;
|
||||
btn6:tbtn;
|
||||
function Create(AOwner);override; //构造
|
||||
begin
|
||||
inherited;
|
||||
end
|
||||
function btn6_clk(o;e);virtual; //选择当前选中项的后一项
|
||||
begin
|
||||
if listbox1.Multisel=0 then
|
||||
begin
|
||||
idx := listbox1.getCurrentSelection();
|
||||
nidx := (idx+1+listbox1.ItemCount) mod listbox1.ItemCount;
|
||||
listbox1.setCurrentSelection(nidx);
|
||||
end
|
||||
end
|
||||
function btn5_clk(o;e);virtual; //在选中项前插入
|
||||
begin
|
||||
listbox1.insertItem(datetimetostr(now()),listbox1.getCurrentSelection());
|
||||
end
|
||||
|
||||
function btn4_clk(o;e);virtual; //在最后加入
|
||||
begin
|
||||
listbox1.appendItem(datetimetostr(now()));
|
||||
end
|
||||
function btn3_clk(o;e);virtual; //多选单选设置
|
||||
begin
|
||||
if o.caption="多选/(单选)" then
|
||||
begin
|
||||
listbox1.Multisel := 1;
|
||||
o.caption :="(多选)/单选";
|
||||
end else
|
||||
begin
|
||||
listbox1.Multisel := 0;
|
||||
o.caption :="多选/(单选)"
|
||||
end
|
||||
end
|
||||
|
||||
function btn2_clk(o;e);virtual; //删除选中
|
||||
begin
|
||||
listbox1.DeleteSelectedItems();
|
||||
end
|
||||
function btn1_clk(o;e);virtual; //初始化数据
|
||||
begin
|
||||
InitListData();
|
||||
end
|
||||
function InitListData();
|
||||
begin
|
||||
listbox1.Items := array(
|
||||
"龙岗区",
|
||||
"盐田区",
|
||||
"坪山区",
|
||||
"大鹏新区",
|
||||
"深汕特别合作区",
|
||||
"宝安区",
|
||||
"光明区",
|
||||
"南山区",
|
||||
"福田",
|
||||
"南山"
|
||||
);
|
||||
end
|
||||
function e_listboxmain1_close(o;e);virtual;
|
||||
begin
|
||||
{**
|
||||
@explan(说明) 主窗口关闭回调 %%
|
||||
@param(e)(tuievent) 消息对象 %%
|
||||
@param(o)(ttimer) 当前主窗口 %%
|
||||
**}
|
||||
if MessageBoxA('是否关闭当前窗口','关闭',MB_YESNO,o)<>IDYES then e.skip := true;
|
||||
|
||||
end
|
||||
function DoControlAlign();override;//对齐子控件
|
||||
begin
|
||||
//当窗口大小改变时,该函数会被调用,
|
||||
//可以通过 clientrect 获取客户区大小,设置子控件的位置以及大小
|
||||
//如果自己处理了子控件的对齐,就可以去掉 inherited
|
||||
inherited;
|
||||
end
|
||||
function Recycling();override; //回收变量
|
||||
begin
|
||||
inherited;
|
||||
ci := self.classinfo(); //将成员变量赋值为nil避免循环引用
|
||||
for i,v in ci["members"] do
|
||||
begin
|
||||
invoke(self,v["name"],nil);
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -1,53 +0,0 @@
|
||||
object e_listboxmain1:e_listboxmain
|
||||
caption="ListBox 范例"
|
||||
height=585
|
||||
left=374
|
||||
onclose=e_listboxmain1_close
|
||||
top=189
|
||||
width=559
|
||||
object listbox1:tlistbox
|
||||
caption="listbox1"
|
||||
height=526
|
||||
left=6
|
||||
top=12
|
||||
width=400
|
||||
end
|
||||
object btn1:tbtn
|
||||
caption="设置初始值"
|
||||
height=31
|
||||
left=416
|
||||
onclick=btn1_clk
|
||||
top=34
|
||||
width=94
|
||||
end
|
||||
object btn2:tbtn
|
||||
caption="删除选择"
|
||||
left=419
|
||||
onclick=btn2_clk
|
||||
top=83
|
||||
end
|
||||
object btn3:tbtn
|
||||
caption="多选/(单选)"
|
||||
left=419
|
||||
onclick=btn3_clk
|
||||
top=134
|
||||
end
|
||||
object btn4:tbtn
|
||||
caption="追加一项"
|
||||
left=419
|
||||
onclick=btn4_clk
|
||||
top=187
|
||||
end
|
||||
object btn5:tbtn
|
||||
caption="插入"
|
||||
left=419
|
||||
onclick=btn5_clk
|
||||
top=238
|
||||
end
|
||||
object btn6:tbtn
|
||||
caption="选择后一项"
|
||||
left=420
|
||||
onclick=btn6_clk
|
||||
top=289
|
||||
end
|
||||
end
|
||||
@@ -1,18 +0,0 @@
|
||||
array(
|
||||
"name":"e_listview",
|
||||
"version":"1.2.0",
|
||||
"dir":(
|
||||
),
|
||||
"files":(
|
||||
"e_listviewmain":(
|
||||
"name":"e_listviewmain",
|
||||
"type":"form"
|
||||
),
|
||||
"e_listview":(
|
||||
"name":"e_listview",
|
||||
"type":"tsl"
|
||||
)
|
||||
),
|
||||
"mainform":"e_listviewmain",
|
||||
"time":"2021-02-09 16:30:48"
|
||||
)
|
||||
@@ -1,6 +0,0 @@
|
||||
//工程E_Listview界面库主程序
|
||||
uses tslvcl; //引入界面库
|
||||
app := InitializeApplication(); //获得界面管理器
|
||||
app.CreateForm(class(E_Listviewmain),fm); //构造主窗口
|
||||
fm.show(); //显示主窗口
|
||||
app.run(); //开始消息循环
|
||||
@@ -1,105 +0,0 @@
|
||||
type E_Listviewmain=class(tdcreateform)
|
||||
uses tslvcl;
|
||||
|
||||
listview1:tlistview;
|
||||
btn1:tbtn;
|
||||
btn2:tbtn;
|
||||
btn3:tbtn;
|
||||
btn4:tbtn;
|
||||
btn5:tbtn;
|
||||
btn6:tbtn;
|
||||
btn7:tbtn;
|
||||
btn8:tbtn;
|
||||
function Create(AOwner);override; //构造
|
||||
begin
|
||||
inherited;
|
||||
end
|
||||
|
||||
|
||||
|
||||
|
||||
function btn8_clk(o;e);virtual;
|
||||
begin
|
||||
Messageboxa(tostn(listview1.SelectedValue),"选中数据",0,self);
|
||||
|
||||
end
|
||||
|
||||
function btn7_clk(o;e);virtual;
|
||||
begin
|
||||
Messageboxa(tostn(listview1.ListValues),"数据",0,self);
|
||||
|
||||
end
|
||||
|
||||
function btn6_clk(o;e);virtual; //插入
|
||||
begin
|
||||
listview1.InsertItem(array(0,datetimetostr(now())),listview1.SelectedId);
|
||||
ModifyIndex();
|
||||
end
|
||||
|
||||
function btn4_clk(o;e);virtual; //清空所有
|
||||
begin
|
||||
listview1.DeleteAllColumns();
|
||||
end
|
||||
|
||||
function btn3_clk(o;e);virtual; //删除数据项
|
||||
begin
|
||||
listview1.DeleteAllItems();
|
||||
end
|
||||
function btn2_clk(o;e);virtual; //删除选中
|
||||
begin
|
||||
listview1.deleteselect();
|
||||
ModifyIndex();
|
||||
end
|
||||
|
||||
function btn1_clk(o;e);virtual; //追加一项
|
||||
begin
|
||||
listview1.appendItem(array(listview1.ItemCount+1,datetimetostr(now())));
|
||||
end
|
||||
function btn5_clk(o;e);virtual; //初始数据
|
||||
begin
|
||||
listview1.Columns := array(("text":"id"),("text":"value","width":260));
|
||||
listview1.DeleteAllItems();
|
||||
d := array((1,"福田"),
|
||||
(2,"南山"),
|
||||
(3,"宝安"),
|
||||
(4,"龙岗"),
|
||||
(5,"罗湖"),
|
||||
(6,"盐田")
|
||||
);
|
||||
listview1.Appenditems(d);
|
||||
|
||||
end
|
||||
function e_listviewmain1_close(o;e);virtual;
|
||||
begin
|
||||
{**
|
||||
@explan(说明) 主窗口关闭回调 %%
|
||||
@param(e)(tuievent) 消息对象 %%
|
||||
@param(o)(ttimer) 当前主窗口 %%
|
||||
**}
|
||||
if MessageBoxA('是否关闭当前窗口','关闭',MB_YESNO,o)<>IDYES then e.skip := true;
|
||||
|
||||
end
|
||||
function DoControlAlign();override;//对齐子控件
|
||||
begin
|
||||
//当窗口大小改变时,该函数会被调用,
|
||||
//可以通过 clientrect 获取客户区大小,设置子控件的位置以及大小
|
||||
//如果自己处理了子控件的对齐,就可以去掉 inherited
|
||||
inherited;
|
||||
end
|
||||
function Recycling();override; //回收变量
|
||||
begin
|
||||
inherited;
|
||||
ci := self.classinfo(); //将成员变量赋值为nil避免循环引用
|
||||
for i,v in ci["members"] do
|
||||
begin
|
||||
invoke(self,v["name"],nil);
|
||||
end
|
||||
end
|
||||
function ModifyIndex(); //修正序号
|
||||
begin
|
||||
for i := 0 to listview1.ItemCount-1 do
|
||||
begin
|
||||
listview1.SetSubItemByIndex(i,0,i+1);
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -1,89 +0,0 @@
|
||||
object e_listviewmain1:e_listviewmain
|
||||
caption="Listview范例"
|
||||
height=608
|
||||
left=434
|
||||
minmaxbox=false
|
||||
onclose=e_listviewmain1_close
|
||||
top=248
|
||||
width=728
|
||||
wssizebox=false
|
||||
object listview1:tlistview
|
||||
columns= [<
|
||||
width=80
|
||||
text="id"
|
||||
>
|
||||
<
|
||||
width=280
|
||||
text="value"
|
||||
>
|
||||
]
|
||||
height=532
|
||||
left=17
|
||||
top=17
|
||||
width=384
|
||||
end
|
||||
object btn1:tbtn
|
||||
caption="追加行"
|
||||
height=31
|
||||
left=432
|
||||
onclick=btn1_clk
|
||||
top=168
|
||||
width=233
|
||||
end
|
||||
object btn2:tbtn
|
||||
caption="删除选中行"
|
||||
height=31
|
||||
left=431
|
||||
onclick=btn2_clk
|
||||
top=221
|
||||
width=233
|
||||
end
|
||||
object btn3:tbtn
|
||||
caption="清空数据"
|
||||
height=31
|
||||
left=432
|
||||
onclick=btn3_clk
|
||||
top=275
|
||||
width=232
|
||||
end
|
||||
object btn4:tbtn
|
||||
caption="清空数据和列名"
|
||||
height=31
|
||||
left=431
|
||||
onclick=btn4_clk
|
||||
top=330
|
||||
width=233
|
||||
end
|
||||
object btn5:tbtn
|
||||
caption="初始化数据"
|
||||
height=31
|
||||
left=431
|
||||
onclick=btn5_clk
|
||||
top=73
|
||||
width=229
|
||||
end
|
||||
object btn6:tbtn
|
||||
caption="在选中位置插入"
|
||||
height=31
|
||||
left=432
|
||||
onclick=btn6_clk
|
||||
top=125
|
||||
width=226
|
||||
end
|
||||
object btn7:tbtn
|
||||
caption="获得数据"
|
||||
height=31
|
||||
left=429
|
||||
onclick=btn7_clk
|
||||
top=381
|
||||
width=235
|
||||
end
|
||||
object btn8:tbtn
|
||||
caption="获得选中数据"
|
||||
height=31
|
||||
left=431
|
||||
onclick=btn8_clk
|
||||
top=428
|
||||
width=232
|
||||
end
|
||||
end
|
||||
@@ -1,18 +0,0 @@
|
||||
array(
|
||||
"name":"e_treeview",
|
||||
"version":"1.2.0",
|
||||
"dir":(
|
||||
),
|
||||
"files":(
|
||||
"e_treeviewmain":(
|
||||
"name":"e_treeviewmain",
|
||||
"type":"form"
|
||||
),
|
||||
"e_treeview":(
|
||||
"name":"e_treeview",
|
||||
"type":"tsl"
|
||||
)
|
||||
),
|
||||
"mainform":"e_treeviewmain",
|
||||
"time":"2021-02-18 10:01:20"
|
||||
)
|
||||
@@ -1,6 +0,0 @@
|
||||
//工程E_TreeView界面库主程序
|
||||
uses tslvcl; //引入界面库
|
||||
app := InitializeApplication(); //获得界面管理器
|
||||
app.CreateForm(class(E_TreeViewmain),fm); //构造主窗口
|
||||
fm.show(); //显示主窗口
|
||||
app.run(); //开始消息循环
|
||||
@@ -1,119 +0,0 @@
|
||||
type E_TreeViewmain=class(tdcreateform)
|
||||
uses tslvcl;
|
||||
treeview1:ttreeview;
|
||||
btn1:tbtn;
|
||||
btn2:tbtn;
|
||||
btn3:tbtn;
|
||||
btn4:tbtn;
|
||||
btn5:tbtn;
|
||||
btn6:tbtn;
|
||||
btn7:tbtn;
|
||||
btn8:tbtn;
|
||||
function Create(AOwner);override; //构造
|
||||
begin
|
||||
inherited;
|
||||
end
|
||||
function btn8_clk(o;e);virtual;
|
||||
begin
|
||||
treeview1.HasLine := not treeview1.HasLine;
|
||||
end
|
||||
|
||||
function e_treeviewmain1_close(o;e);virtual;
|
||||
begin
|
||||
{**
|
||||
@explan(说明) 主窗口关闭回调 %%
|
||||
@param(e)(tuievent) 消息对象 %%
|
||||
@param(o)(ttimer) 当前主窗口 %%
|
||||
**}
|
||||
if MessageBoxA('是否关闭当前窗口','关闭',MB_YESNO,o)<>IDYES then e.skip := true;
|
||||
end
|
||||
function btn7_clk(o;e);virtual;
|
||||
begin
|
||||
Messageboxa(tostn(treeview1.RootNode.toarray()),"数据",0,self);
|
||||
end
|
||||
function btn6_clk(o;e);virtual; //修改文本
|
||||
begin
|
||||
nd := treeview1.CurrentNode;
|
||||
if not nd then return;
|
||||
r := nd.caption;
|
||||
wd := new TInPutQuerys(self);
|
||||
wd.parent := self;
|
||||
d := array(("Name":"b","value":r,"caption":"标题名:"));
|
||||
wd.SetData(d);
|
||||
if wd.ShowDlg(r1,"输入标题") then
|
||||
begin
|
||||
nd.caption := r1["b"];
|
||||
treeview1.InvalidateItem(nd);
|
||||
end
|
||||
end
|
||||
|
||||
function btn4_clk(o;e);virtual;//checkbox
|
||||
begin
|
||||
treeview1.checkbox := not treeview1.checkbox;
|
||||
treeview1.InvalidateRect(nil,false);
|
||||
end
|
||||
function btn5_clk(o;e);virtual; //删除选择
|
||||
begin
|
||||
nd := treeview1.CurrentNode;
|
||||
if nd then
|
||||
begin
|
||||
nd.Recycling();
|
||||
end
|
||||
end
|
||||
function btn3_clk(o;e);virtual;//插入子节点
|
||||
begin
|
||||
nd := treeview1.CurrentNode;
|
||||
if nd then
|
||||
begin
|
||||
nnd := treeview1.CreateTreeNode();
|
||||
nnd.caption := datetimetostr(now());
|
||||
nnd.parent := nd;
|
||||
treeview1.SetSel(nnd);
|
||||
end
|
||||
end
|
||||
function btn2_clk(o;e);virtual; //初始化
|
||||
begin
|
||||
rnd := treeview1.RootNode;
|
||||
ndsz := treeview1.CreateTreeNode();
|
||||
ndsz.caption := "深圳";
|
||||
ndsz.parent := rnd;
|
||||
ndgz := treeview1.CreateTreeNode();
|
||||
ndgz.caption := "广州";
|
||||
ndgz.parent := rnd;
|
||||
|
||||
for i,v in array("福田","罗湖","宝安","龙岗","盐田") do
|
||||
begin
|
||||
nd := treeview1.CreateTreeNode();
|
||||
nd.caption := v;
|
||||
nd.parent := ndsz;
|
||||
end
|
||||
for i,v in array("白云","花都","天河") do
|
||||
begin
|
||||
nd := treeview1.CreateTreeNode();
|
||||
nd.caption := v;
|
||||
nd.parent := ndgz;
|
||||
end
|
||||
|
||||
end
|
||||
function btn1_clk(o;e);virtual; //清空
|
||||
begin
|
||||
treeview1.RootNode.RecyclingChildren();
|
||||
end
|
||||
|
||||
function DoControlAlign();override;//对齐子控件
|
||||
begin
|
||||
//当窗口大小改变时,该函数会被调用,
|
||||
//可以通过 clientrect 获取客户区大小,设置子控件的位置以及大小
|
||||
//如果自己处理了子控件的对齐,就可以去掉 inherited
|
||||
inherited;
|
||||
end
|
||||
function Recycling();override; //回收变量
|
||||
begin
|
||||
inherited;
|
||||
ci := self.classinfo(); //将成员变量赋值为nil避免循环引用
|
||||
for i,v in ci["members"] do
|
||||
begin
|
||||
invoke(self,v["name"],nil);
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -1,81 +0,0 @@
|
||||
object e_treeviewmain1:e_treeviewmain
|
||||
caption="树控件范例"
|
||||
height=520.0
|
||||
left=483
|
||||
minmaxbox=false
|
||||
onclose=e_treeviewmain1_close
|
||||
top=258
|
||||
width=632
|
||||
wssizebox=false
|
||||
object treeview1:ttreeview
|
||||
caption="treeview1"
|
||||
height=420
|
||||
left=15
|
||||
top=26
|
||||
width=371
|
||||
end
|
||||
object btn1:tbtn
|
||||
caption="清空树"
|
||||
height=31
|
||||
left=418
|
||||
onclick=btn1_clk
|
||||
top=412
|
||||
width=153
|
||||
end
|
||||
object btn2:tbtn
|
||||
caption="初始化数据"
|
||||
height=31
|
||||
left=418
|
||||
onclick=btn2_clk
|
||||
top=38
|
||||
width=155
|
||||
end
|
||||
object btn3:tbtn
|
||||
caption="插入子节点"
|
||||
height=31
|
||||
left=420
|
||||
onclick=btn3_clk
|
||||
top=91
|
||||
width=152
|
||||
end
|
||||
object btn4:tbtn
|
||||
caption="checkbox"
|
||||
height=31
|
||||
left=418
|
||||
onclick=btn4_clk
|
||||
top=204
|
||||
width=152
|
||||
end
|
||||
object btn5:tbtn
|
||||
caption="删除选择节点"
|
||||
height=31
|
||||
left=420
|
||||
onclick=btn5_clk
|
||||
top=148
|
||||
width=150
|
||||
end
|
||||
object btn6:tbtn
|
||||
caption="修改选中节点文本"
|
||||
height=31
|
||||
left=420
|
||||
onclick=btn6_clk
|
||||
top=308
|
||||
width=151
|
||||
end
|
||||
object btn7:tbtn
|
||||
caption="获得数据"
|
||||
height=31
|
||||
left=419
|
||||
onclick=btn7_clk
|
||||
top=360
|
||||
width=151
|
||||
end
|
||||
object btn8:tbtn
|
||||
caption="hasline"
|
||||
height=31
|
||||
left=419
|
||||
onclick=btn8_clk
|
||||
top=259
|
||||
width=150
|
||||
end
|
||||
end
|
||||
@@ -1 +0,0 @@
|
||||
//tsl script :atsl
|
||||
@@ -1,27 +0,0 @@
|
||||
array(
|
||||
"name":"e_action",
|
||||
"version":"1.1.2",
|
||||
"dir":(
|
||||
),
|
||||
"files":(
|
||||
"e_actionmain":(
|
||||
"name":"e_actionmain",
|
||||
"type":"form",
|
||||
"dir":""
|
||||
),
|
||||
"e_action":(
|
||||
"name":"e_action",
|
||||
"type":"tsl",
|
||||
"dir":""
|
||||
),
|
||||
"atsl":(
|
||||
"name":"atsl",
|
||||
"type":"tsl",
|
||||
"dir":""
|
||||
)
|
||||
),
|
||||
"mainform":"e_actionmain",
|
||||
"entryscript":"e_action",
|
||||
"time":"2022-04-24 17:32:45",
|
||||
"commandline":"\"$(TSL_EXE)\" \"$(FULL_CURRENT_PATH)\" -libpath \"$(SEARCH_PATH)\""
|
||||
)
|
||||
@@ -1,6 +0,0 @@
|
||||
//工程E_Action界面库主程序
|
||||
uses tslvcl; //引入界面库
|
||||
app := InitializeApplication(); //获得界面管理器
|
||||
app.CreateForm(class(E_Actionmain),fm); //构造主窗口
|
||||
fm.show(); //显示主窗口
|
||||
app.run(); //开始消息循环
|
||||
@@ -1,65 +0,0 @@
|
||||
type E_Actionmain=class(tdcreateform)
|
||||
uses tslvcl;
|
||||
btn1:tbtn;
|
||||
actionlist1:tactionlist;
|
||||
action1:taction;
|
||||
btn2:tbtn;
|
||||
btn3:tbtn;
|
||||
btn4:tbtn;
|
||||
btn5:tbtn;
|
||||
popupmenu1:tpopupmenu;
|
||||
menu1:tmenu;
|
||||
btn6:tbtn;
|
||||
function Create(AOwner);override; //构造
|
||||
begin
|
||||
inherited;
|
||||
end
|
||||
|
||||
|
||||
function action1_onexecute(o;e);
|
||||
begin
|
||||
{**
|
||||
@explan(说明) onexecute消息回调 %
|
||||
@param(e)(tuievent) 消息对象 %
|
||||
@param(o)(tcomponent) 组件 %
|
||||
**}
|
||||
echo "\r\naction do ";
|
||||
end
|
||||
|
||||
function btn5_clk(o;e);virtual; //修改caption
|
||||
begin
|
||||
action1.caption := datetimetostr(now());
|
||||
end
|
||||
function btn6_clk(o;e);virtual; //修改enabled状态
|
||||
begin
|
||||
action1.Enabled := not action1.Enabled;
|
||||
end
|
||||
function e_actionmain1_close(o;e);virtual;
|
||||
begin
|
||||
{**
|
||||
@explan(说明) 主窗口关闭回调 %%
|
||||
@param(e)(tuievent) 消息对象 %%
|
||||
@param(o)(ttimer) 当前主窗口 %%
|
||||
**}
|
||||
if MessageBoxA('是否关闭当前窗口','关闭',MB_YESNO,o)<>IDYES then e.skip := true;
|
||||
|
||||
end
|
||||
function DoControlAlign();override;//对齐子控件
|
||||
begin
|
||||
//当窗口大小改变时,该函数会被调用,
|
||||
//可以通过 clientrect 获取客户区大小,设置子控件的位置以及大小
|
||||
//如果自己处理了子控件的对齐,就可以去掉 inherited
|
||||
inherited;
|
||||
end
|
||||
function Recycling();override; //回收变量
|
||||
begin
|
||||
inherited;
|
||||
ci := self.classinfo(); //将成员变量赋值为nil避免循环引用
|
||||
for i,v in ci["members"] do
|
||||
begin
|
||||
invoke(self,v["name"],nil);
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -1,81 +0,0 @@
|
||||
object e_actionmain1:e_actionmain
|
||||
caption="action 范例"
|
||||
height=520
|
||||
left=451
|
||||
onclose=e_actionmain1_close
|
||||
popupmenu=popupmenu1
|
||||
top=256
|
||||
width=510
|
||||
object btn1:tbtn
|
||||
action=action1
|
||||
caption="btn1"
|
||||
height=31
|
||||
left=25
|
||||
onclick=btn1_clk
|
||||
top=67
|
||||
width=163
|
||||
end
|
||||
object actionlist1:tactionlist
|
||||
left=225
|
||||
top=189
|
||||
height=30
|
||||
width=30
|
||||
object action1:taction
|
||||
caption="绑定action的控件"
|
||||
enabled=true
|
||||
onexecute=action1_onexecute
|
||||
end
|
||||
end
|
||||
object btn2:tbtn
|
||||
action=action1
|
||||
caption="btn2"
|
||||
height=31
|
||||
left=25
|
||||
onclick=btn2_clk
|
||||
top=126
|
||||
width=163
|
||||
end
|
||||
object btn3:tbtn
|
||||
action=action1
|
||||
caption="btn3"
|
||||
height=31
|
||||
left=25
|
||||
top=182
|
||||
width=162
|
||||
end
|
||||
object btn4:tbtn
|
||||
action=action1
|
||||
caption="btn4"
|
||||
height=31
|
||||
left=27
|
||||
top=241
|
||||
width=161
|
||||
end
|
||||
object btn5:tbtn
|
||||
caption="修改action的caption"
|
||||
height=31
|
||||
left=280
|
||||
onclick=btn5_clk
|
||||
top=98
|
||||
width=140
|
||||
end
|
||||
object popupmenu1:tpopupmenu
|
||||
left=162
|
||||
top=329
|
||||
height=30
|
||||
width=30
|
||||
caption="popupmenu1"
|
||||
object menu1:tmenu
|
||||
action=action1
|
||||
caption="menu1"
|
||||
end
|
||||
end
|
||||
object btn6:tbtn
|
||||
caption="修改action enabed"
|
||||
height=31
|
||||
left=281
|
||||
onclick=btn6_clk
|
||||
top=248
|
||||
width=143
|
||||
end
|
||||
end
|
||||
@@ -1,18 +0,0 @@
|
||||
array(
|
||||
"name":"e_menu",
|
||||
"version":"1.2.0",
|
||||
"dir":(
|
||||
),
|
||||
"files":(
|
||||
"e_menumain":(
|
||||
"name":"e_menumain",
|
||||
"type":"form"
|
||||
),
|
||||
"e_menu":(
|
||||
"name":"e_menu",
|
||||
"type":"tsl"
|
||||
)
|
||||
),
|
||||
"mainform":"e_menumain",
|
||||
"time":"2021-02-18 11:07:09"
|
||||
)
|
||||
@@ -1,6 +0,0 @@
|
||||
//工程E_Menu界面库主程序
|
||||
uses tslvcl; //引入界面库
|
||||
app := InitializeApplication(); //获得界面管理器
|
||||
app.CreateForm(class(E_Menumain),fm); //构造主窗口
|
||||
fm.show(); //显示主窗口
|
||||
app.run(); //开始消息循环
|
||||
@@ -1,45 +0,0 @@
|
||||
type E_Menumain=class(tdcreateform)
|
||||
uses tslvcl;
|
||||
mainmenu1:tmainmenu;
|
||||
menu1:tmenu;
|
||||
menu2:tmenu;
|
||||
menu3:tmenu;
|
||||
menu4:tmenu;
|
||||
menu5:tmenu;
|
||||
popupmenu1:tpopupmenu;
|
||||
menu6:tmenu;
|
||||
menu7:tmenu;
|
||||
function Create(AOwner);override; //构造
|
||||
begin
|
||||
inherited;
|
||||
end
|
||||
function Menuclick(o,e);//菜单点击
|
||||
begin
|
||||
messageboxa(format("菜单项:%s 被点击",o.caption),"菜单点击:",0,self);
|
||||
end
|
||||
function e_menumain1_close(o;e);virtual;
|
||||
begin
|
||||
{**
|
||||
@explan(说明) 主窗口关闭回调 %%
|
||||
@param(e)(tuievent) 消息对象 %%
|
||||
@param(o)(ttimer) 当前主窗口 %%
|
||||
**}
|
||||
if MessageBoxA('是否关闭当前窗口','关闭',MB_YESNO,o)<>IDYES then e.skip := true;
|
||||
end
|
||||
function DoControlAlign();override;//对齐子控件
|
||||
begin
|
||||
//当窗口大小改变时,该函数会被调用,
|
||||
//可以通过 clientrect 获取客户区大小,设置子控件的位置以及大小
|
||||
//如果自己处理了子控件的对齐,就可以去掉 inherited
|
||||
inherited;
|
||||
end
|
||||
function Recycling();override; //回收变量
|
||||
begin
|
||||
inherited;
|
||||
ci := self.classinfo(); //将成员变量赋值为nil避免循环引用
|
||||
for i,v in ci["members"] do
|
||||
begin
|
||||
invoke(self,v["name"],nil);
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -1,101 +0,0 @@
|
||||
object e_menumain1:e_menumain
|
||||
caption="²Ëµ¥·¶Àý"
|
||||
height=392
|
||||
left=488
|
||||
mainmenu=mainmenu1
|
||||
onclose=e_menumain1_close
|
||||
popupmenu=popupmenu1
|
||||
top=220
|
||||
width=375
|
||||
object mainmenu1:tmainmenu
|
||||
left=58
|
||||
top=73
|
||||
height=30
|
||||
width=30
|
||||
object menu1:tmenu
|
||||
caption="menu1"
|
||||
object menu3:tmenu
|
||||
caption="²Ëµ¥3"
|
||||
onclick=menuclick
|
||||
end
|
||||
object menu4:tmenu
|
||||
caption="menu4"
|
||||
object menu5:tmenu
|
||||
caption="menu5"
|
||||
onclick=menuclick
|
||||
end
|
||||
end
|
||||
end
|
||||
object menu2:tmenu
|
||||
caption="menu2"
|
||||
onclick=menuclick
|
||||
end
|
||||
end
|
||||
object popupmenu1:tpopupmenu
|
||||
left=172
|
||||
top=98
|
||||
height=30
|
||||
width=30
|
||||
caption="popupmenu1"
|
||||
object menu6:tmenu
|
||||
bitmap={ 0502000000060400000074797065000203000000696D670006040000006461746
|
||||
100020103000089504E470D0A1A0A0000000D4948445200000020000000200806
|
||||
000000737A7AF4000000017352474200AECE1CE90000000467414D410000B18F0
|
||||
BFC6105000000097048597300000EC300000EC301C76FA8640000029649444154
|
||||
5847ED964B68135114865D894BC1951BE946A42B752356505C54042D882E846A5
|
||||
BA13B6B151491D295B4882B2D08E293D6422D55918AF5416AC5A22008BAD085D4
|
||||
5A6D9A986812E3249989B1769263FEDB7BAF379957122DA5900F0EC99C398F7FE
|
||||
69E99B9CB689159FA02326F5FD3B7CE760AECAF67BFC6D8437EA634FE49803E3A
|
||||
4293B5AB6862CDF2020B1F3BC423BCF114103BDF455AFF2532E331EEF9CBCCBEE
|
||||
DACE174FD061687C64284F1CCC7A3DC2910F0BDA79B12B76EF0A379444158A071
|
||||
27690357C94CFC60E770DBD17C76F23D3B065F5AF7B2D868F729EE71470A885FB
|
||||
F201B850E37CAA210E56FA893E784059A765162A897B27A8AC509D098D5686FE6
|
||||
1E77A480ACA153B0A54136800895F4AB17143DDB49D33B36CA1866352B2898BFE
|
||||
AE4DD01CAFD4C33C1F063494AC13203C6D347ECD6A65F8E738F15E3F918454E9F
|
||||
A0CFDB6A0BC47C58B792426D0728393C48B95F191EED8EE7107A618CFBE86B471
|
||||
B4D6DAA2910F371FD6A0A1F6FA5D4C81D22738E475B910252F786D8731CE93AC9
|
||||
3DE5A3E7DF01688AE6AA18888348FDC903A25C8E47CF2305A80973A120F75A316
|
||||
311FECF1DDD779FC2475BD8B2A8B5B16CEA7C48017883C52F9FCBDFD251EEB1F2
|
||||
3BE867457035E5907A3C4CA12307D9C0223F71BB9F9F71980134FAB465ADE551C
|
||||
260A20086B45250437D746D05884630153701D1331DB6F3632635CABC7BC38FAC
|
||||
FC3701221E312AFEDD9B995F7D5BAA2CB80027BFA02AA02AA02A606909C8EA49B
|
||||
9FF2B061B98E24D0CA848C0ECD4844CC477A152C4C70BE6F43AB6150066F66C65
|
||||
89F12B3DDC533EC81502C446B6184701DACD6B32195F46AC7B39861C91EFF6F97
|
||||
61400B0D6A248A5A6F55DE4D5EC711500B08ED840408C9D61176C67C829657E3C
|
||||
052C348B2C80E80FBF5E212863E9B00A0000000049454E44AE42608200 }
|
||||
caption="menu6"
|
||||
onclick=menuclick
|
||||
end
|
||||
object menu7:tmenu
|
||||
bitmap={ 0502000000060400000074797065000203000000696D670006040000006461746
|
||||
100024503000089504E470D0A1A0A0000000D4948445200000020000000200806
|
||||
000000737A7AF4000000017352474200AECE1CE90000000467414D410000B18F0
|
||||
BFC6105000000097048597300000EC300000EC301C76FA864000002DA49444154
|
||||
5847C597BD6A54411886BD066BADD45E11BC01116C6C142F402C2CAC44112C949
|
||||
47A031606B7515288918022A8202EF107D42A0988C4D5603624EBAE68B2C6282A
|
||||
9FFB8CE73D993D993973768DF8C040767EDF39F3CDFB4DB6D87F66200193CDAF7
|
||||
6A6FEC1F6DF7C6FBBAFCDD9B6D1866DEF95BDD7E7ECE0AD79BBF0B46D77DF7DB1
|
||||
C5D59FD9883449012BDF7FD995A94F6ED1AD97672B9791671DEBACA585940AB8F
|
||||
8BC637B7A3BF527DE596BD8A189A69D7BDCB61BAF576C7CB66B23BD9D1FB9BD60
|
||||
BB6A6FFBFAEE1B9BB3B157CBD96C61A2022EBDF8D837D9F9276D9BEE7CCB5AE3C
|
||||
CF4FA9CAEB7FAC69E7CD8CA5A37121470F4CE423E78C7D586D5E757B396EAD466
|
||||
965D7C681EE60CB141006A35E8C483A5AC76780EF78E46F371A445FA04705EEAC
|
||||
CC014A71EB55C49C14662227201442C4143273E5D8A63F716F349F93B0547495F
|
||||
829A9B2572015C1B4DC8F995E12FAE9212411CA92FD75A380118871A89E032428
|
||||
BABA4447093E887A7082700F7D2245CA318FEE2136FBAC1BFCB44708DD50F5705
|
||||
27000BA5122389515C1CF41BAA8AC0C8E883A58313808F53899B85082D0EAA135
|
||||
544E0A2B4EB189C00920995586A11DF17FCC541F53EBE88900362E1B491CCC009
|
||||
9063E1EB451045E7E2E2A0858A48446843E40FDAC8A4E004F02326A08C9880322
|
||||
4405EE304B0432A438ACB1846808E8063072740B93E1684318611A02024F0C109
|
||||
9041945DC310C308D0353C3BE95DC3974B6BF964654654645001BE1129DE9C003
|
||||
830FEC70B5256EC33A8007D694AB3FBC3D5E50248106A4C2523A1FE55F0931189
|
||||
4FE40248917AFF5549C7308800A56352BEFF58CD05008F054D5AE54142445352F
|
||||
80F92A2D7F40980E3F7D77D7FB39F64A3539FB3DA75360800DD55CA663D4A635F
|
||||
2A280050ABC194BF7996F35563440500E7A577A2CA20FF9810D4A197B04FA9002
|
||||
062FDF7629582A770ADFDC7678CA4008171B05B2C141F279970C664529219F984
|
||||
63C25507A1B2807F83D96FD95753C0FE2C3C9B0000000049454E44AE42608200 }
|
||||
caption="menu7"
|
||||
onclick=menuclick
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -1,18 +0,0 @@
|
||||
array(
|
||||
"name":"e_toolbar",
|
||||
"version":"1.2.0",
|
||||
"dir":(
|
||||
),
|
||||
"files":(
|
||||
"e_toolbarmain":(
|
||||
"name":"e_toolbarmain",
|
||||
"type":"form"
|
||||
),
|
||||
"e_toolbar":(
|
||||
"name":"e_toolbar",
|
||||
"type":"tsl"
|
||||
)
|
||||
),
|
||||
"mainform":"e_toolbarmain",
|
||||
"time":"2021-02-18 10:41:29"
|
||||
)
|
||||
@@ -1,6 +0,0 @@
|
||||
//工程E_Toolbar界面库主程序
|
||||
uses tslvcl; //引入界面库
|
||||
app := InitializeApplication(); //获得界面管理器
|
||||
app.CreateForm(class(E_Toolbarmain),fm); //构造主窗口
|
||||
fm.show(); //显示主窗口
|
||||
app.run(); //开始消息循环
|
||||
@@ -1,43 +0,0 @@
|
||||
type E_Toolbarmain=class(tdcreateform)
|
||||
uses tslvcl;
|
||||
toolbar1:ttoolbar;
|
||||
controlimagelist1:tcontrolimagelist;
|
||||
toolbutton1:ttoolbutton;
|
||||
toolbutton2:ttoolbutton;
|
||||
toolbutton3:ttoolbutton;
|
||||
toolbutton4:ttoolbutton;
|
||||
toolbutton5:ttoolbutton;
|
||||
function Create(AOwner);override; //构造
|
||||
begin
|
||||
inherited;
|
||||
end
|
||||
function ToolbarItemClick(o,e);//item 点击
|
||||
begin
|
||||
Messageboxa(format("按钮:%s 被点击",o.caption),"点击",0,self);
|
||||
end
|
||||
function e_toolbarmain1_close(o;e);virtual;
|
||||
begin
|
||||
{**
|
||||
@explan(说明) 主窗口关闭回调 %%
|
||||
@param(e)(tuievent) 消息对象 %%
|
||||
@param(o)(ttimer) 当前主窗口 %%
|
||||
**}
|
||||
if MessageBoxA('是否关闭当前窗口','关闭',MB_YESNO,o)<>IDYES then e.skip := true;
|
||||
end
|
||||
function DoControlAlign();override;//对齐子控件
|
||||
begin
|
||||
//当窗口大小改变时,该函数会被调用,
|
||||
//可以通过 clientrect 获取客户区大小,设置子控件的位置以及大小
|
||||
//如果自己处理了子控件的对齐,就可以去掉 inherited
|
||||
inherited;
|
||||
end
|
||||
function Recycling();override; //回收变量
|
||||
begin
|
||||
inherited;
|
||||
ci := self.classinfo(); //将成员变量赋值为nil避免循环引用
|
||||
for i,v in ci["members"] do
|
||||
begin
|
||||
invoke(self,v["name"],nil);
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -1,168 +0,0 @@
|
||||
object e_toolbarmain1:e_toolbarmain
|
||||
caption="묏야으렀절"
|
||||
height=520.0
|
||||
left=429
|
||||
onclose=e_toolbarmain1_close
|
||||
top=236
|
||||
width=664
|
||||
object toolbar1:ttoolbar
|
||||
caption="toolbar1"
|
||||
height=29
|
||||
imagelist=controlimagelist1
|
||||
width=648
|
||||
object toolbutton1:ttoolbutton
|
||||
caption="객큐1"
|
||||
imageid=0
|
||||
onclick=toolbaritemclick
|
||||
end
|
||||
object toolbutton2:ttoolbutton
|
||||
caption="객큐2"
|
||||
imageid=1
|
||||
onclick=toolbaritemclick
|
||||
end
|
||||
object toolbutton3:ttoolbutton
|
||||
caption="객큐3"
|
||||
imageid=2
|
||||
onclick=toolbaritemclick
|
||||
end
|
||||
object toolbutton4:ttoolbutton
|
||||
caption="toolbutton4"
|
||||
imageid=4
|
||||
onclick=toolbaritemclick
|
||||
end
|
||||
object toolbutton5:ttoolbutton
|
||||
caption="toolbutton5"
|
||||
imageid=3
|
||||
onclick=toolbaritemclick
|
||||
end
|
||||
end
|
||||
object controlimagelist1:tcontrolimagelist
|
||||
left=84
|
||||
top=114
|
||||
images={ 0502000000060400000074797065000204000000626D707300060500000069746
|
||||
56D73000505000000000000000005020000000604000000747970650002030000
|
||||
00696D670006040000006461746100029F02000089504E470D0A1A0A0000000D4
|
||||
948445200000020000000200806000000737A7AF4000000017352474200AECE1C
|
||||
E90000000467414D410000B18F0BFC6105000000097048597300000EC300000EC
|
||||
301C76FA86400000234494441545847ED96CDCB69511487EF5F6BC25061A048C9
|
||||
409181C840182829C554664AEFC04C0C0C64A0440626C8E0DC9E75D73E6DC7E1E
|
||||
55EEE3BF1D41A9CB5D6DEFB77F6C7DAFB97F3C37C047C045C08C866B34E201078
|
||||
DA686768341ABE39582C1693B8CD4B056CB75BDFB8D77ABD9EE4C34B9760381CC
|
||||
A00D56A553D97CC663389472211F5BC588099C16EB7AB9E4BCEE7B3C483C1A07A
|
||||
3C0268C83A91F4B7964C269DC3E1A03D5EB2DFEF25271C0EABC712C0BA783B7BD
|
||||
6CAE5B233994CB4C76BD6EBB5E4C5E371F55802581782ACD3BB582C1632463A9D
|
||||
568F2520140A49F0743AA9E7F54CA753192397CBA9C712108D4625B8DBEDD4F31
|
||||
85F5F5FCE6834D2AFFB8CC76319A3542AA9C712904AA524B85C2ED5F318DFED7C
|
||||
1B734C6BB59A7A2C01F97C5E82F736911FABD5CA4924120F89E8F7FB92D76AB5D
|
||||
46309A8542A12644A6FC1F16293FA99116157392FE6A4D9425D01CD66538283C1
|
||||
403DD79829FCCE10E4077F4E9C9930B802FCD479A1D613B78D7658A15090F6C56
|
||||
251B3AF61EDC9E1470CAE00FE9C2033F12CF57A5DDAB28F8EC7A37AAF61F793C7
|
||||
6930B802587B82EC8567E8743AD22E93C948A9BD07E79F5CEA81C115C0EE377FF
|
||||
128F3F95CDA50FF379B8D7A6F4305249F8A68700570FE09520F9E816378EBF2F1
|
||||
C21DC018DC0906570015902015F15D700B3286BD54AE00EE0082DC09EF8277006
|
||||
3F02E30B802E09D37227DD2B7FD1A820B019C6B92DE69ED765B47FBC3850040C4
|
||||
BFBE8AFC8C3E79B078B912F0BFF908F861018EF31BE3A64DABEA5772560000000
|
||||
049454E44AE426082000001000000050200000006040000007479706500020300
|
||||
0000696D67000604000000646174610002D303000089504E470D0A1A0A0000000
|
||||
D49484452000000300000003008060000005702F987000000017352474200AECE
|
||||
1CE90000000467414D410000B18F0BFC6105000000097048597300000EC300000
|
||||
EC301C76FA86400000368494441546843ED98DB4B14511CC7FB837AEB35287A08
|
||||
0A8A1E844088EA2108C948222822BAA0629682742122C9D0BC84B5A246E135EFB
|
||||
AAEAB99AD46522A5B5E482C5371E7F66DCECE6FDCD9F1CCECCD7194F6035FD839
|
||||
F33D737EDFD939672E7BB0CB4907709B74002EBF2781BA1380AF981A9CC39900A
|
||||
3CF80B2BD9A825DD4E80CD60116C781F76781E6F3407B0ED07915E8BD050CE403
|
||||
83F701FF03400E91D904EBA70718794C8D26E687D4639400DE42A03F0FE8BE017
|
||||
45C01DAB281A6735ADBCA2C99ADB10E507B3852044FC38FC8C8C118C0CEC74E8E
|
||||
F198668D9591D11AEB00BC031AB530A2F9E687B5B3CCC48A653207304BE75369F
|
||||
431CD327A2D482E407D069954DE66F23D769A6ED6FA2E06F8FB753916C0B8BAD4
|
||||
1CE47BEC345E499D553CC7F81E26C702B009AE136BAEF0642CCC5BC0F7303912C
|
||||
0739C0CC4DF2030EB4D4C46D8366F1C266702A87FF95632DDC21F87C99100E5FB
|
||||
B4FB81F9AC26A3892AE0F511FE384C8ECD81ED523A80DB4A07705BE900B1F4EA9
|
||||
0F640C65B22EDE4BDCB3F9E598E07E8CB257312189F58ADE47880EEEB644E1061
|
||||
75870460626F506CA04414EF2338F3C6E03F9FC44E2B1D201EB117733650228A6
|
||||
70233316F0C520BD0758DCC49102B04BB57C4416A01D87B41B2D8050854904943
|
||||
595A53975E99B6A249FD12B25B46F5CF2D66597D0FAADA0FCCB453012A7FD6211
|
||||
67E4028A31CA153D5106BE8538E819D33891B4F024B5F69700DB1C2AF156F90DC
|
||||
33457B35764600F6E992DD9D09A92100B1A43BFC5B2CEE8C0A209CA98132F92BB
|
||||
C8FE17E005F110DA8A228109F0E6C142B95F9A02CAC40C8AE8B0A2116755207B7
|
||||
034C54D3606AED3F9721DC6E8E2A9489FD1BF2F08F4DED3AEE04A83E0004B54B8
|
||||
4C10A14B23C9B8AD425F74D43F28C6D6C4BE57EEAE95680858F34885AFCBB2F51
|
||||
C572755ABDEE3FCF417CD803E9C510F5D4D8FE006F8ED200EA65E30B42BCD9145
|
||||
E1EB9851B245CAA8732B3443D236C7F00C34B9058EA8570B911CAE22AC47B1DDC
|
||||
C299C4DC56286B02F58AC6850077680035405EAB56A05A3C96D7C361CCC54B4FF
|
||||
AC9CDC73A40DB457E01A9AA258B0600421722CBA3F4D20F796C0EA1CCCA485BED
|
||||
2839ADB10EC0E0BD906F8508BD505D72D77708EA9C608F0D72C73772D9631FC06
|
||||
1E4DE2948CF072116B443C8698090590531BF0D72609E1CB17135C056900EE036
|
||||
BB3C00F00FB4FD2774447C293D0000000049454E44AE426082000002000000050
|
||||
2000000060400000074797065000203000000696D670006040000006461746100
|
||||
02DB02000089504E470D0A1A0A0000000D4948445200000020000000200806000
|
||||
000737A7AF4000000017352474200AECE1CE90000000467414D410000B18F0BFC
|
||||
6105000000097048597300000EC300000EC301C76FA8640000027049444154584
|
||||
7D596CB6A2A411086CF0BBA72A3A851541414043722EE44111782BAF182260441
|
||||
B7826F6188E015DCB81111172AC4B55087BFE89E8CE3CCD8E6C484F341914A55F
|
||||
7F43F5D3DD5FEA15FE6FF13301C0EA95AAD92C7E32197CB45D1689452A914F5FB
|
||||
7DDA6EB762943ACA0276BB1D65B35972381CB6562814E870388859B7511230994
|
||||
C281C0EF3028944823A9D0EAD562B91253A1E8FD4EBF5C8EFF7F398582C46F3F9
|
||||
5C64EDB92960B3D9F076E3C1E572993E3E3E44E61A942097CB69BBB15C2E45C69
|
||||
A9B02506F3CAC56AB89C86DBADD2ECF29954A22628DAD80E974CA0F72BBDDBC13
|
||||
AAA024B21CEFEFEF226A8EAD80F57A4DF1789CDFE85E702620A05EAFF3FFFBFD9
|
||||
E4EA713FB7A940EE13D542A150A8542D46AB558402693E15D808F9731F2ED02DA
|
||||
ED362F260DE583C137DB495301AFAFAF6C5F452FC2E974F25F7C41665C09188D4
|
||||
6DA64F85F65301868CF49A7D3743E9F45E6922B01B27630F8FFC2DBDB1B6F3BBA
|
||||
A8155702D0DBA500F88FE642C0783CE6859F9E9ED8E023F6482E04BCBCBCF0A2C
|
||||
D66930D3E62F780CF0EF3A4A121E5F37991BDE64280BC707091C0E023760FFAC5
|
||||
8D66862660369BF1A060302822C43E62C8A9625C0CDD54DE0DC56251443FD1043
|
||||
C3F3F6B938D869C2A728E1E79A7F87C3E11F94413100804B4C946434E153947CF
|
||||
4D018BC582074422110EEA410C398C51C12800259017936509E489470B3522DB2
|
||||
AC6A820059899D9D7C002BC5E2F0F306BBDB235638C0AFA05AD4C0F0BC0AFDA46
|
||||
A3C1013392C9247FDF2A982D02ACBE06ED107E17560280D961FC5101D805E4D01
|
||||
D253F26006F2F4BA03F8C0F1360677ABE5D80F1329286BADBB6E2DFE2970510FD
|
||||
05E1AD4F7F1B5448FE0000000049454E44AE42608200000300000005020000000
|
||||
60400000074797065000203000000696D67000604000000646174610002F80200
|
||||
0089504E470D0A1A0A0000000D4948445200000020000000200806000000737A7
|
||||
AF4000000017352474200AECE1CE90000000467414D410000B18F0BFC61050000
|
||||
00097048597300000EC300000EC301C76FA8640000028D494441545847C5973D6
|
||||
814411480B7B25050045B259D8595A0A5550AB5B00A626163255A5A5B28B676E9
|
||||
2C14091A8B84E01F88281844A208FE8128722268E7DE9D5E363197E4923CF79B9
|
||||
BB7EEE6CE9DD9BDD3FD608ED937F3E6BD9B7DF3DE6C209EB456D665E2735BC69E
|
||||
B464FFDDA6EC996AC8D61BA169F4919D989D9799AFCB12AD6E582D374E073EB43
|
||||
A72F679243B26EB125CFF6EDA968950764FD5E5C0BDA669F491E9F8CEC9D0E8A0
|
||||
EB22D781F3AF1765FBCDAEE1C38F7ECA85370B3217AEDAD15E5E353A72F9FD2F3
|
||||
912CF45075DD6C8E3AF0E1C9F6D9945F6CE34E46AAD6DA5FEA0832E6B1C7AF0C3
|
||||
4A7BE9EBC0C87457F14CBC8DF5F6BA9516075DFD23BB6E85569AA5C70126A2C07
|
||||
60F8B934FE7CD9AFCB1CD641C60AB9888C2B0E10FB1363B9226718060E9376198
|
||||
F04AB1910E4CE300C7858825680679E72E581B1BD8D2236A1CE0CCE259D1683FF
|
||||
73232AD08D8C0163621206B91388EC667B7282C442B0A3985C446760D489D2C32
|
||||
FE71C90EFB53D6818B6FBBF1466A0FC8DF3CD4A2353BEC4F5907C8A6E85157028
|
||||
AC8B6B8A094A1AC0340EDC0764025EB97207C18C4010A18B603CAE9C1FB4D2B2E
|
||||
C6200E5045B16D1CE0218F53CF22B34BD76AD940EDE70073988B4E1E89036C03D
|
||||
B9187462DEDD2BB5416DBE400632A73D592E415100804848B2B9F9692C54FCFD9
|
||||
24629F01993E33D74512847A0CB94CB8B8F36DD9242DE61F7BDCBD74A4FB8C31C
|
||||
745E6186A22E226E3C38B7A47F6DD8E3DB7C6B52163CC07AD8C2611692AE61AE5
|
||||
CB978535197DF86707E823F325938A119429468B9D0DF3DE69F47DE92946FC545
|
||||
E8EA1D20B8952E9954CA9F452AA3011854AAEE58A2A123445AF6A800EBAAC51F8
|
||||
C3442158885816F9EF9F660AC785335BC9C7699A7FF3792EF21B1F1CB3C87955C
|
||||
3470000000049454E44AE42608200000400000005020000000604000000747970
|
||||
65000203000000696D670006040000006461746100028E02000089504E470D0A1
|
||||
A0A0000000D4948445200000020000000200806000000737A7AF4000000017352
|
||||
474200AECE1CE90000000467414D410000B18F0BFC61050000000970485973000
|
||||
00EC300000EC301C76FA86400000223494441545847ED972DAB024114860D824D
|
||||
2C7693C560103409FA038C62B008828A3FC0EA57B268320882980D822206838A4
|
||||
530F80BC42236ABC570EE3D7BE7EC9DFD9A9D5D96850BF78117768ECE99675777
|
||||
56032049201080CD66C34662B2D92C9CCF673612232DF07ABD20994CB2D10FEFF
|
||||
71B2E970B7C3E1F56F9A1DFEFB3237BA4059056AB05F3F91CDAED36643219E5AA
|
||||
6082C120A4D369A8D7EB50AD56E1F97CB219F6480BDCEF77A8542AEAA25689442
|
||||
2301C0ED92C7BA404F6FBBDE962A2148B45365B8CADC0E974825028A4344DA552
|
||||
301E8F0D8BF1E16565246C054AA592DA1005ECAE06BE1E0E87D5F16432619DCC1
|
||||
10ADC6E37F5ECDD06A5450805F01B6FD6D4691E8F07EB684428D068344C1B3A8D
|
||||
6853D208D0AD869F2372381C6C733C1EA582E0FE81E1D108C46231D57A3A9D42A
|
||||
7D3D19C89DBE009E11D41E372B9CC56E404F4DFEE5C2E07BD5E4F53731BB33B87
|
||||
F04560B7DB196A84A5403E9FF74C60BBDD1A6A842F02EBF5DA50237C11582E978
|
||||
61A2114E876BB9A9ADB2C160B438DF04560B55A196A842F02FADE184228E0E546
|
||||
A4AF11BF47DFE0938BDE8093BC14A8D56AEA188F098DC0F57A85D168A44C4070D
|
||||
FE61BB90DF6C3E7CC6C365382C78446408F9702560805F08A98357492783CCEBA
|
||||
99231440D01E9F0B187D73AAEB5FA3DA6030605DACB115E0E117C11028C9D7717
|
||||
159FE05FE960036365B04FF0BF202FADF7D221C09E0CE98482494E81769369B10
|
||||
8D46A15028B08A0C005F1ECEF59244AA69250000000049454E44AE42608200 }
|
||||
end
|
||||
end
|
||||
@@ -1 +0,0 @@
|
||||
"%~dp0..\tsl.exe" "%~dp0tslediter.tsl" -libpath "%~dp0;"
|
||||
@@ -1,3 +0,0 @@
|
||||
//tsl代码编辑器-天软-ljj
|
||||
//20201019
|
||||
return GetTslEditerStart();
|
||||
@@ -1,31 +0,0 @@
|
||||
tsl语言本地编辑器
|
||||
版本:1.0.0
|
||||
日期:2022-07-19
|
||||
使用前请阅读<TSL语言许可权利和限制>
|
||||
许可权利和限制
|
||||
深圳市天软科技开发有限公司(以下简称天软)授予您使用程序的非排他性、不可转让、有限的许可,但必须遵守本协议和计划文档中规定的限制,仅限于在如下用途使用:
|
||||
(I) 个人自用
|
||||
(II) 开发用途
|
||||
(III) 天软许可的产品中使用
|
||||
(IV) 获得天软的独立商用许可后在商业用途中使用
|
||||
被允许或禁止的行为
|
||||
您可以在合理必要的范围内复制程序,以行使本协议中授予的许可权。
|
||||
您不得有如下行为:
|
||||
(I) 删除或修改任何程序标记或包含有天软的专有权利的任何信息;
|
||||
(II) 以任何方式将程序提供给任何第三方,除非该第三方是代表您行事的承包商;
|
||||
(III) 转让本协议或将程序或其中的权益分发、赠送或转让给任何第三方,除非该第三方为代表您行事的承包商仅在为您开发的范畴内使用;
|
||||
(IV) 对程序进行反向工程、反汇编或反编译,除非是法律明确许可的范围。
|
||||
(V) 程序可能包含源代码,除非在本协议中明确许可用于其他目的(例如,在开放源码许可下许可),否则根据本协议的条款提供的源代码仅供参考,不得修改。
|
||||
权利说明
|
||||
(I) 天软保留本协议中未明确授予的所有权利。如果您要将程序用于本协议明确允许之外的任何目的,均必须从天软或天软的经销商处获得有效的程序许可证。
|
||||
(II) 天软或其许可方保留程序的所有所有权和知识产权。
|
||||
(III) 所使用到的第三方技术或程序可能具有独立的条款,您需要在使用第三方技术或程序时遵守第三方技术的单独条款,第三方技术的权利不受本协议的任何限制。
|
||||
(IV) 随软件可能附带有一些源代码,您需要遵守本协议以及源代码的相关的权利约束,这些源代码如果是第三方的,您还需要遵守第三方的源代码权利许可约束。
|
||||
信息收集
|
||||
程序的安装或自动更新过程可能会向天软或其服务提供商传输有关这些过程的数据,以帮助天软了解和优化这些过程。天软不会将这些数据与个人身份信息相关联。
|
||||
免责声明
|
||||
这些程序按原样提供,不提供任何形式的担保,且天软拒绝所有明示和默示的保证,包括但不限于对适销性、特定用途的适用性或不侵权的任何默示担保。
|
||||
在任何情况下,除非适用法律要求,否则天软不对您承担任何损害责任,包括因使用或无法使用程序而造成的任何一般、特殊、附带或后果性损害(包括但不限于数据丢失或数据变得不准确、您或第三方遭受的损失或程序无法与任何其他程序一起运行),即使该持有者或其他方已被告知此类损害的可能性。
|
||||
出口管制
|
||||
中国的出口法律法规和任何其他相关的当地出口法律法规适用于这些项目。您同意此类出口管制法律管辖您对本协议下提供的程序(包括技术数据)和任何可交付服务的使用,并且您同意遵守所有此类出口法律和法规(包括“视为出口”和“视为再出口”规定)。您同意,程序或服务(或其直接产品)产生的任何数据、信息、程序和/或材料将不会直接或间接地违反这些法律而出口,也不会被用于这些法律禁止的任何目的。
|
||||
|
||||
@@ -366,7 +366,7 @@ type TVclDesigner = class(tvcform)
|
||||
begin
|
||||
if f[i]=fio then
|
||||
begin
|
||||
ef := f[1:i]+"designer"+fio+"examples";
|
||||
ef := f[1:i]+"d_examples";
|
||||
if filelist("",ef) then
|
||||
begin
|
||||
FProjectFileOpener.initialDir := ef;
|
||||
@@ -2055,9 +2055,11 @@ begin
|
||||
end
|
||||
function staticInit();
|
||||
begin
|
||||
global g_orig_lib_path;
|
||||
np := getdesignerpath()+"dcmps"+ioFileseparator();
|
||||
CreateDirWithFileName(np+"1.txt");
|
||||
tsl_setlibpath_( np+";"+tsl_getlibpath_());
|
||||
g_orig_lib_path := tsl_getlibpath_();
|
||||
tsl_setlibpath_( np+";"+g_orig_lib_path);
|
||||
ini := static getdesginerini();
|
||||
//class(TDSocketServer),class(TDSocketClient),
|
||||
//注册的componet
|
||||
|
||||
@@ -1083,7 +1083,26 @@ type TProjectView = class(TVCForm) //
|
||||
fgoformmenu.Enabled := false;
|
||||
return;
|
||||
end
|
||||
FTslEditer.TslSearchDir := array(p,Getfuncextdir());
|
||||
////////////////////从新构造search目录///////////////////////////////
|
||||
global g_orig_lib_path;
|
||||
sdir := array(p);
|
||||
idx := 1;
|
||||
if ifstring(g_orig_lib_path) then
|
||||
begin
|
||||
for i,v in str2array(g_orig_lib_path,";") do
|
||||
begin
|
||||
tm := trim(v);
|
||||
if tm then
|
||||
begin
|
||||
sdir[idx++] := tm;
|
||||
end
|
||||
end
|
||||
end else
|
||||
begin
|
||||
sdir[idx++] := Getfuncextdir();
|
||||
end
|
||||
/////////////////////////////////////
|
||||
FTslEditer.TslSearchDir := sdir;//array(p,Getfuncextdir());
|
||||
FExecEntry := FprojName;
|
||||
if d["entryscript"]then
|
||||
begin
|
||||
@@ -2037,6 +2056,7 @@ BD141CA912494F502D48D224F45050274A21E03806FF2C7CA7516022D7D000000
|
||||
Onclose := thisfunction(CloseHidden);
|
||||
exe := gettslexe();
|
||||
fio := ioFileseparator();
|
||||
global g_orig_lib_path;
|
||||
FDefaultcmdline := format('"%s" "%s" -libpath "%s"',"$(TSL_EXE)","$(FULL_CURRENT_PATH)","$(SEARCH_PATH)");
|
||||
end
|
||||
function getExecuteEditerSetcmdline();
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
"%~dp0..\tsl.exe" "%~dp0vcldesigner.tsl" -libpath "%~dp0;"
|
||||
@@ -1,4 +0,0 @@
|
||||
{
|
||||
tsl界面设计器启动程序
|
||||
}
|
||||
GetTslVclDesignerStart();
|
||||
@@ -1,31 +0,0 @@
|
||||
tsl语言本界面开发工具
|
||||
版本:1.0.0
|
||||
日期:2023-01-19
|
||||
使用前请阅读<TSL语言许可权利和限制>
|
||||
许可权利和限制
|
||||
深圳市天软科技开发有限公司(以下简称天软)授予您使用程序的非排他性、不可转让、有限的许可,但必须遵守本协议和计划文档中规定的限制,仅限于在如下用途使用:
|
||||
(I) 个人自用
|
||||
(II) 开发用途
|
||||
(III) 天软许可的产品中使用
|
||||
(IV) 获得天软的独立商用许可后在商业用途中使用
|
||||
被允许或禁止的行为
|
||||
您可以在合理必要的范围内复制程序,以行使本协议中授予的许可权。
|
||||
您不得有如下行为:
|
||||
(I) 删除或修改任何程序标记或包含有天软的专有权利的任何信息;
|
||||
(II) 以任何方式将程序提供给任何第三方,除非该第三方是代表您行事的承包商;
|
||||
(III) 转让本协议或将程序或其中的权益分发、赠送或转让给任何第三方,除非该第三方为代表您行事的承包商仅在为您开发的范畴内使用;
|
||||
(IV) 对程序进行反向工程、反汇编或反编译,除非是法律明确许可的范围。
|
||||
(V) 程序可能包含源代码,除非在本协议中明确许可用于其他目的(例如,在开放源码许可下许可),否则根据本协议的条款提供的源代码仅供参考,不得修改。
|
||||
权利说明
|
||||
(I) 天软保留本协议中未明确授予的所有权利。如果您要将程序用于本协议明确允许之外的任何目的,均必须从天软或天软的经销商处获得有效的程序许可证。
|
||||
(II) 天软或其许可方保留程序的所有所有权和知识产权。
|
||||
(III) 所使用到的第三方技术或程序可能具有独立的条款,您需要在使用第三方技术或程序时遵守第三方技术的单独条款,第三方技术的权利不受本协议的任何限制。
|
||||
(IV) 随软件可能附带有一些源代码,您需要遵守本协议以及源代码的相关的权利约束,这些源代码如果是第三方的,您还需要遵守第三方的源代码权利许可约束。
|
||||
信息收集
|
||||
程序的安装或自动更新过程可能会向天软或其服务提供商传输有关这些过程的数据,以帮助天软了解和优化这些过程。天软不会将这些数据与个人身份信息相关联。
|
||||
免责声明
|
||||
这些程序按原样提供,不提供任何形式的担保,且天软拒绝所有明示和默示的保证,包括但不限于对适销性、特定用途的适用性或不侵权的任何默示担保。
|
||||
在任何情况下,除非适用法律要求,否则天软不对您承担任何损害责任,包括因使用或无法使用程序而造成的任何一般、特殊、附带或后果性损害(包括但不限于数据丢失或数据变得不准确、您或第三方遭受的损失或程序无法与任何其他程序一起运行),即使该持有者或其他方已被告知此类损害的可能性。
|
||||
出口管制
|
||||
中国的出口法律法规和任何其他相关的当地出口法律法规适用于这些项目。您同意此类出口管制法律管辖您对本协议下提供的程序(包括技术数据)和任何可交付服务的使用,并且您同意遵守所有此类出口法律和法规(包括“视为出口”和“视为再出口”规定)。您同意,程序或服务(或其直接产品)产生的任何数据、信息、程序和/或材料将不会直接或间接地违反这些法律而出口,也不会被用于这些法律禁止的任何目的。
|
||||
|
||||
Reference in New Issue
Block a user