今天一个朋友在使用UniGUI碰到了问题,他要遍历窗体上的控件,然后根据类名进行相应的控制。
原来的程序为:
procedure TmainForm.Fj_component;
var i: Integer;
begin
for i:=0 to MainForm.ComponentCount-1 do
begin
UniMemo1.Lines.Add(MainForm.Components[i].ClassName);
if MainForm.Components[i] is TUniBitBtn then
begin
UniLabel1.Caption := ‘found’;
(MainForm.Componets[i] as TUniBitBtn).Enabled := False;
end;
end;
end;
这段程序无法运行,然后经过调试才发现TUniBitBtn在Web网页中的类名已经更换为TUniExtBitBtn。
这说明Web是在Win32程序中重新转化成新的类。
UniGUI如何禁止关闭新窗口
- 取消新窗口的SystemMenu,目的是去掉窗体的关闭按钮
- 在窗体加上新按钮,点击事件为 Close;
- 在窗体的OnClose事件中添加如下代码:
Action := CaNone; //这句一定要放在Mess