UniLoginForm无边框的方法
UniLoginForm无边框的方法
在应用系统的登录界面,我们一般采用无边框的方式,在VCL模式下,一般将登录界面的窗体的BorderStyle属性设置为bsNone即可。但采用UniGUI的TUniLoginForm方式,设置了窗体的BorderStyle属性为bsNone,其显示也带边框:

我们采用下面解决办法:
- 为登录UniLoginForm1的 ClientEvents下的UniEvents 添加 beforInit脚本:
 ![]() 
function window.beforeInit(sender, config)
{
  Ext.apply(
   sender,
   {
      border: false,
      baseCls: '', // 这个很关键 背景透明
   } );
}
- 在UniLoginForm1的 onShow 事件代码如下:
procedure TUniLoginForm1.UniLoginFormShow(Sender: TObject);
begin
  UniContainerPanel1.Left := 0;
  UniContainerPanel1.Top := 0;
  UniContainerPanel1.Width := UniLoginForm1.ClientWidth + 10;
  UniContainerPanel1.ClientHeight := UniLoginForm1.ClientHeight + 12;
  UniContainerPanel1.Align := alNone;
end;
其主要意思是:把 UniContainerPanel1 的尺寸比 TUniLoginForm1 要大一些,将右边和下边覆盖掉,但 UniContainerPanel1 的Align 必须为 alNone。
效果如下:

方法虽然笨拙朴实,但还是管用的_,如果有更简便的方法敬请赐教!
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号