procedure TRIGHTPANELDOC.FormDocCreate(Sender: TObject);
begin
pnlSearch.Visible :=TRTLConsts.HasDocSystem;
pnlNews.Visible :=TRTLConsts.HasOASystem;
TFavoritesDocs(dvFavorites.Doc).OnFuncsChanged := DoFuncChangeExecute;
if not pnlSearch.Visible then
begin
Container1.Top := pnlSearch.Top;
if TFavoritesDocs(dvFavorites.Doc).Funcs = nil then
begin
pnlNews.Top := 162;
pnlNews.Height := 412;
end
else
begin
pnlNews.Top := GetBestHeight(TFavoritesDocs(dvFavorites.Doc).Funcs)+10;
// pnlNews.Height := 554-GetBestHeight(TFavoritesDocs(dvFavorites.Doc).Funcs)+10;
end;
end;
if pnlNews.Visible then
begin
ibNews.BizClassRef.BizURL.URL := SysUtils.ExtractFileDir(TRTLConsts.NewsDocURL);
dvNews.DocFileName := SysUtils.ExtractFileName(TRTLConsts.NewsDocURL);
end
else
begin
Container1.Height := pnlRight.Height - 62;
dvFavorites.Height := pnlRight.Height -80; //修改了这里
end;
end;
procedure TRIGHTPANELDOC.DoFuncChangeExecute(Sender: TObject);
begin
pnlSearch.Visible :=TRTLConsts.HasDocSystem;
pnlNews.Visible :=TRTLConsts.HasOASystem;
Container1.Height := GetBestHeight(TFavoritesDocs(dvFavorites.Doc).Funcs);
//TFavoritesDocs(dvFavorites.Doc).Height:= GetBestHeight(TFavoritesDocs(dvFavorites.Doc).Funcs);//注销后没有作用,修改了静态值,也没有作用
pnlNews.Top :=65 +GetBestHeight(TFavoritesDocs(dvFavorites.Doc).Funcs) ;
// pnlNews.Height :=440 -GetBestHeight(TFavoritesDocs(dvFavorites.Doc).Funcs) ;
if not pnlSearch.Visible then
begin
Container1.Top := pnlSearch.Top;
pnlNews.Top := GetBestHeight(TFavoritesDocs(dvFavorites.Doc).Funcs)+10;
// pnlNews.Height:= 554-GetBestHeight(TFavoritesDocs(dvFavorites.Doc).Funcs)+10;
end;
if pnlNews.Visible then
begin
ibNews.BizClassRef.BizURL.URL := SysUtils.ExtractFileDir(TRTLConsts.NewsDocURL);
dvNews.DocFileName := SysUtils.ExtractFileName(TRTLConsts.NewsDocURL);
end
else
begin
Container1.Height := pnlRight.Height - 62;
end;
dvFavorites.Height := pnlRight.Height-80; ;) //没有作用
end;
static function TRIGHTPANELDOC.GetBestHeight(AFuncs: TStringList): Integer;
begin
{ if AFuncs.Count<6 then
Result := round((AFuncs.Count+1)/2)*76
else
Result := 228;}
Result := 152;
end;