代码如下:
  if not assigned(frmTasklist) then
  begin
    tab := TTabSheet.Create(Page);
    tab.PageControl := Page;
    Page.ActivePage := tab;    frmTasklist := TfrmTasklist.Create(tab);
    frmTasklist.Parent := tab;
    frmTasklist.Align := alClient;
    tab.caption := frmTasklist.caption;
    frmTasklist.Show;
  end
  else
  begin
    tab := (frmTasklist.Parent as TTabSheet);
  end; 
  tab.Show;

解决方案 »

  1.   

    两个方法:
    1、先设置frmTasklist的visible=false,全部复制完了以后,再显示。
    2、设置PageControl1.DoubleBuffered := true;
      

  2.   

    try
          LockWindowUpdate(tab.Handle);
        finally
          LockWindowUpdate(0);
        end;
    试过了,不行的
      

  3.   

    谢谢,问题觖了,呵呵打开DoubleBuffered无效,
    加载时用代码frmTasklist.visible :=false无效,
    直接在设计器中把frmTasklist.visible 设成false可以了,
    一点也不闪,感谢,放分