Êý¾Ý¿â½á¹¹ÈçÏ£º
id parentid,name,money,totalmoney,submoney
0,0,¸ù½Úµã,0,15000,0
1,0,ÕÅɽ,1000,5000,0
2,0,ÕźÃ,2000,7000,0
3,0,ÍõÎå,3000,3000,0
4,1,ÀèÃ÷,4000,4000,0
5,2,ÀÏÁõ,5000,5000,0
type
tmydata = record
id:integer;
parentid:integer;
name:string;
money:double;
totalmoney:double;
submoney:double;
resume:boolean;
end;
pmydata = ^tmydata;
ÏÖÔÚÏë·´Ïò¼ÆËãsubmoney.
submoney Êǵ±Ç°½ÚµãµÄtotalmoney ¼õÈ¥ÏÂÃæËùÓвã´ÎµÄmoney.
²¢ÇÒҪȥµôµ±Ç°Ï¼¶½ÚµãµÄmoney×î´óÖµ¡£
function submoney(p:tTreenode):double;
var
i:integer;
d:pcustdata;
begin
d:=pcustdata(p.data);
{
if not d.resum then //resum Æðµ½Ö»¼ÆËãÒ»´ÎµÄ×÷ÓÃ?¡£
begin
result:=d.money;
exit;
end;
}
if p.Count <1 then
begin
d.submoney := 0; //=0
result := d.money;
d.resum:=false;
exit;
end;
result := d.money;
for i:=0 to p.count -1 do
result := result + submoney(p.Item[i]);
//È«²¿¼ÓÆðÀ´ÒÔºóÓÃ×ÜÊýÈ¥¼õ
d.submoney := d.totalmoney + d.money - result;
d.resum:=false;
end;
ÎÒдµÄÕâ¸öûÓп¼ÂÇϼ¶½ÚµãµÄ×î´óÖµ¡£
ÁíÍâÒ»ÖÖ¡£
function submoney(p:tTreenode):double;
Ïà¹ØÎÊ´ð£º
Çë½Ì¸÷·¸ßÊÖ¡£ÎäÁÖǰ±²¡£ÎÒ½«B.EXE×ö³É×ÊÔ´Îļþ£¬È»ºó¼Óµ½123.dllÖС£ÓÃA.EXEÀ´µ÷ÓÃ123.dllÖеÄB.EXE
Çë¸÷λǰ±²°ïæָ½ÌÏ¡£A.exeÈçºÎÀ´µ÷ÓÃdllÖеÄexe£¿´úÂëÓÖ¸ÃÈçºÎд£¿
ÎÞÈ˻شð£¿
×ö³É×ÊÔ´Î ......
Àý×Ó³ÌÐò¼û¸½¼þ£¬ÓÃDelphi 7½øÐбàÒë
ÎÊÌâ´úÂëΪ
Delphi(Pascal) code:
if Node.ChildNodes <> nil then
begin
for i := 0 to Node.ChildNodes.Count - 1 do
begin
cNode := N ......
ÀÏʦ²¼ÖÃÁËÒ»¸ö¿ÎÌ⣬ÐèÒªÓÃDelphi×öÒ»¸öÓ°ÔºÊÛÆ±¹ÜÀíϵͳ£¬µ«ÊÇÎÒÃÇ»¹Ã»ÓÐѧ¹ýDelphi£¬¸÷λ¸ßÊÖÄÜ·ñÖ¸µãһϣ¬ÈçºÎ½øÐÐϵͳÉè¼Æ£¬Ê±¼ä±È½Ï½ô¼±£¬Ð»Ð»°¡
ÎÒÒ²²»¶®£¬Ò²Ïëѧ£¡
ÎÒÒ²Êǰ¡£¬¸Ð¾õDelphiͦºÃµÄ£¬ÏÖ ......
¶¨Òå±äÁ¿s,sqlΪstringÀàÐÍ£¬sΪº¯Êý²ÎÊý£¬sql£º='select field1 from table1 where'+s;ÔËÐÐʱs¸³ÖµÎªid>7»òÕßid<7¡¢id=7,µ«ÊÇÔËÐÐʱ×ÜÊdzö´í£¬Çë¸÷λ°ïÎÒ¸Ä´í£¬¶àл£¡
showMessage(sql)Ï¿´¿´
sql£º='sel ......
ÓÐûÓа취ʵÏÖ¸úQQÓÊÏäÒ»ÑùµÄЧ¹û£¬µã»÷×ó±ßµÄ²Ëµ¥£¬ÓÒ±ßˢУ¬¶à¸öÒ³Ãæ¼äÇл»£¬¶ø×ó±ßµÄ²Ëµ¥À¸²»±ä
ÓÐºÜ¶à¿Ø¼þ¿ÉÒÔʵÏÖ
µÈÄã·Ö¼Ó·Ö£¬ÎÒ¸øÄãд¸öÔ´Âë¡£Õâµã·ÖʵÔÚûÓж¯Á¦»Ø´ð¡£
ExpressBars
¿´¿´¡£
Ò ......