通讯簿那个建议不要删掉了,因为涉及到显示、添加、刷新和删除等很多地方,按照六楼的方法把所有的组都删除,然后不让他添加就好了。
邮件中的那个因为只是涉及的显示,倒是可以在
业务模型\协同系统\个人事务\通讯簿库\通讯簿 窗体中调试着修改一下。
这个是我修改的楼主可以参考一下:
procedure TADDRESSBOOKFORM.tvPersonExpanded(Sender: TObject; Node: TTreeNode);
begin
{ if (not FCommExpandFlag) and SysUtils.SameText(Node.Text,'公共地址簿') then
begin
FCommExpandFlag := True;
tvPerson.Items[0].getFirstChild.Delete;
init(Node);
end; }
if (not FIndExpandFlag) and SysUtils.SameText(Node.Text,'个人地址簿') then
begin
FIndExpandFlag := True;
tvPerson.Items[0].getFirstChild.Delete;
init(Node);
end;
end;
procedure TADDRESSBOOKFORM.Init(ANode:TTreeNode);
var
I: Integer;
lStrings: TStrings;
lCommLoadFlag: Boolean;
begin
lStrings := TStringList.Create;
try
{ if SysUtils.SameText(ANode.Text,'公共地址簿') then
begin
lStrings.Clear;
FAddressDMForm.LoadAddressGroup('-1', lStrings);
FAddressDMForm.LoadSubGroupNodes(tvPerson.Items, tvPerson.Items[0], lStrings);
end; }
if SysUtils.SameText(ANode.Text,'个人地址簿') then
begin
lStrings.Clear;
FAddressDMForm.LoadAddressGroup(TContextUtils.GetOperator(Context).ID, lStrings);
FAddressDMForm.LoadSubGroupNodes(tvPerson.Items,
tvPerson.Items[0], lStrings);
end;
finally
lStrings.Free;
end;
lCommLoadFlag := False;
{ if SysUtils.SameText(ANode.Text,'公共地址簿') then
begin
for I := tvPerson.Items.Count - 1 downto 0 do
begin
if SysUtils.SameText(tvPerson.Items[I].Text,'个人地址簿') then
lCommLoadFlag := True;
if lCommLoadFlag then
FAddressDMForm.LoadAddressToNodes(tvPerson.Items, tvPerson.Items[I]);
end;
end; }
if SysUtils.SameText(ANode.Text,'个人地址簿') then
begin
for I := tvPerson.Items.Count - 1 downto 0 do
begin
if SysUtils.SameText(tvPerson.Items[I].Text,'个人地址簿') then
Break;
FAddressDMForm.LoadAddressToNodes(tvPerson.Items, tvPerson.Items[I]);
end;
end; |