VFP ·R¥ÎªÌªÀ°Ï ­º­¶ VFP ·R¥ÎªÌªÀ°Ï
¥»°Q½×°Ï¬° Visual Foxpro ·R¥ÎªÌ¸gÅç¥æ¬yªº¦a¤è, ½Ð¦h¦h§Q¥Î"·j´M"ªº¥\¯à, ¥ý¬d¬Ý¬Ý¦³µL«e¨Ò¥i´`, ¦pªGÁÙ¦³¤£À´ªº¦Aµo°Ý. ³¡¥÷¥DÃD¦³ªþ¥[ÀÉ®×, ¶·¥ýµù¥U¦¨¬°ªÀ°Ï©~¥Á¤~¥i¥H¤U¸ü.
 
 ±`¨£°ÝÃD±`¨£°ÝÃD   ·j´M·j´M   ·|­û¦Cªí·|­û¦Cªí   ·|­û¸s²Õ·|­û¸s²Õ   ·|­ûµù¥U·|­ûµù¥U 
 ­Ó¤H¸ê®Æ­Ó¤H¸ê®Æ   µn¤JÀˬd±zªº¨p¤H°T®§µn¤JÀˬd±zªº¨p¤H°T®§   µn¤Jµn¤J

¦bVFP5.0¤¤¨Ï¥Î TreeView±±¨î¶µ(Âà¶K)

 
µoªí·s¥DÃD   ¦^ÂÐ¥DÃD    VFP ·R¥ÎªÌªÀ°Ï ­º­¶ -> VFP °Q½×°Ï
¤W¤@½g¥DÃD :: ¤U¤@½g¥DÃD  
µoªí¤H ¤º®e
Ruey



µù¥U®É¶¡: 2003-03-12
¤å³¹: 1698
¨Ó¦Û: tunglo

²Ä 1 ¼Ó

µoªíµoªí©ó: ¬P´Á¤T ¤Q¤G¤ë 03, 2003 5:37 pm    ¤å³¹¥DÃD: ¦bVFP5.0¤¤¨Ï¥Î TreeView±±¨î¶µ(Âà¶K) ¤Þ¨¥¦^ÂÐ

¦bVFP5.0¤¤¨Ï¥Î TreeView±±¨î¶µ
http://www.ithome-cn.net/technology/fox/fox45.htm
¶À¡@©ú
¡@¡@·í¸ê®Æ®w¤¤«O¦sªº¸ê®Æ¤§¶¡¨ã¦³¼h¦¸ÁõÄÝÃö«Y®É(¦pªí¥Ü¦UºØªÀ·|²Õ´µ²ºcªº¸ê®Æ)¡A´N­n¥Î¨ì¯à¥H¾ð«¬µ²ºcÅã¥Ü¨Ã¾Þ§@³oÃþ¸ê®Æªº±±¨î¶µ¡GTreeView¡C

¡@¡@TreeView¬OWindows95/98¤UªºActiveX±±¨î¶µ¡A¥]§t¦bComctl32.ocx¤¤¡A·í¦w¸Ë¤FVFP5.0©ÎVB5.0±M·~ª©¤¤ªºActiveX«á¡A¥i¥H¦bWindowsªºSystem¤l¥Ø¿ý¤U§ä¨ì¡C

¡@¡@¤U­±³q¹L¤@­Ó²³æªº¨Ò¤l¤¶²Ð¦p¦ó¦bVFP¤¤¤è«K¦a¨Ï¥ÎTreeView¡C

¡@¡@¥ý«Ø¥ß¤@­Óªí¡A¥Î¨Óªí¥Ü¹Ï1©Ò¥Üªºµ²ºc¡Cªíµ²ºc¤Î¸ê®Æ¦pªí1¡C

¡@¡@³æ¦ì¥N½XÄæ¦ì«ö¸ô®|¥N½Xªk½s½X¡A¨ä¤¤¥]§tµÛ¸ê®Æ®w¤¤¦U°O¿ý¹ïÀ³¸`ÂI¦b¾ð¤¤ªº¦ì¸m¸ê°T(¤]§Y«O¦sµÛ¦U°O¿ý¤§¶¡ªº¼h¦¸ÁõÄÝÃö«Y)¡C³oºØ¥N½X¯àªí¥Ü¥X±q®Ú¸`ÂI¨ì«ü©w¸`ÂIªº¾ã­Ó¸ô®|¡C¹Ï1©Ò¥Ü¬°¤@­Ó¤T¼hµ²ºc¡A¹Ï¤¤ªº¼Æ¦ì§Y¬O¬ÛÀ³³æ¦ìªº¸ô®|¥N½X¡C

¡@¡@²{¦b³Ð«Ø¤@­Ó·sªí³æ¡A§âtree.dbf²K¥[¨ìªí³æªº¸ê®ÆÀô¹Ò¤¤¡C²K¥[TreeView±±¨î¶µ¡A²K¥[¤èªk¡G¦bªí³æ±±¨î¶µ¤u¨ãÄ椤¿ï¾ÜOLE®e¾¹±±¨î¶µ¡A²K¥[¨ìªí³æ¤¤¡A¥X²{Insert Object¹ï¸Ü¤è¶ô«á¡A¿ïInsert Control¡A¦b¦Cªí®ØùØ¿ïMicrosoft TreeView Control¡C

¡@¡@µ¹ªí³æ²K¥[¤@­Ó·s¤èªk:myparentnode¥Î©óÀò±o¾ð¤¤¬Y¸`ÂI¤÷¸`ÂIªºÁä­È¡C

¡@¡@PARAMETERS nodecode

¡@¡@IF RIGHT(nodecode,1)=¡¬0¡¬

¡@¡@RETURN ¡¬000¡¬

¡@¡@ELSE

¡@¡@RETURN LEFT(nodecode,2)¡Ï¡¬0¡¬

¡@¡@ENDIF

¡@¡@¦bTreeViewªºInit¨Æ¥óùØ¥[¤J¤U­±ªºµ{¦¡¡A¥Îtree.dbf¤¤ªº°O¿ý¶ñ¥RTreeView¡G

¡@¡@SELECT tree

¡@¡@GO TOP

¡@¡@THIS.Nodes.ADD(,,¡¬K¡¬¡Ïtree.³æ¦ì¥N½X,RTRIM(tree.³æ¦ì¦WºÙ))

¡@¡@SKIP

¡@¡@DO WHILE .NOT. EOF()

¡@¡@THIS.Nodes.ADD(¡¬K¡¬¡ÏTHISFORM.myparentnode(tree.³æ¦ì¥N½X),4,¡¬K¡¬¡Ïtree.³æ¦ì¥N½X,RTRIM(tree.³æ¦ì¦WºÙ))

SKIP

¡@¡@ENDD

¡@¡@GO TOP

¡@¡@µ{¦¡¤¤ADD¬ONodesªº¤èªk¡A»P¦Cªí®ØªºADDItem¤èªkÃþ¦ü¡A¥Î©ó¦VTreeView¤¤²K¥[¸`ÂI¡C

¡@¡@¬°¤F¹ê²{TreeView±±¨î¶µªº¾É¯è¥\¯à(¾ÞÁa¸ê®Æ®w)¡A»Ý­n¦bTreeViewªºNodeClick¨Æ¥ó¤¤¥[¤J¤U­±ªºµ{¦¡¡G

¡@¡@LPARAMETERS NODE

¡@¡@SELECT tree

¡@¡@GO TOP

¡@¡@LOCATE FOR tree.³æ¦ì¥N½X==SUBSTR(NODE.KEY,2)

¡@¡@THISFORM.REFRESH

¡@¡@¦bªí³æ¤¤²K¥[¤@­Ó½s¿è®Ø¡A³]¸mControlSource=¡¬tree.·§ªp¡¬

¡@¡@²{¦b¹B¦æªí³æ¡A®i¶}©Ò¦³«D¸­¸`ÂI¡A¥i¥H¬Ý¨ìTreeView¤w¸g«ö¹Ï1©Ò¥Üªº¼h¦¸Ãö«YÅã¥Ü¥X¤Fªítree.dbf¤¤ªº°O¿ý¡C³æÀ»TreeView¦U¸`ÂI¡A½s¿è®Ø¤¤ªº¤º®eÀHµÛ¤£¦Pªº¸`ÂI¦Ó§ïÅÜ¡A»¡©ú¤W­±ªºµ{¦¡¤w¨ÏTreeView¨ã³Æ¤F¾É¯è¥\¯à¡C

¡@¡@¬°¤FÅýŪªÌ¯à§ó¦n¦a¦bVFP¤¤¨Ï¥ÎTreeView±±¨î¶µ¡A³oùئA¤¶²Ð´XÂI¨Ï¥Î§Þ¥©©Mª`·N¨Æ¶µ¡C

¡@¡@¦bVFP¤¤¨Ï¥ÎTreeView®É¡AÀ³¥R¤À§Q¥ÎNodeªºKeyÄÝ©Ê¡C¥i¥H¬°¸`ÂI«ü©w¦³·N¸qªº¦r¦ê§@¬°¥¦ªºkey­È¡A³o¥¿¬O¦s©ñ¸ô®|¥N½Xªº¦n¦a¤è¡C¦ý­nª`·N¡A¤£¯à¥Î¯Â¼Æ¦ì¦r¦ê§@¬°NodeªºKeyÄݩʪº­È¡C§_«hTreeView±N²£¥ÍµL®ÄÁä­È¿ù»~¡C¦]¦¹¡A¤W­±ªºµ{¦¡¤¤¦b¤Þ¥ÎKeyÄݩʪº¦a¤è³£¦X¨Ö¤F¤@­Ó¦r¤¸¡§K¡¨¡C

¡@¡@·í¾ð¤¤ªº¸`ÂI¤ñ¸û¦h®É¡AÀ³¹ï¦U¸`ÂI±Æ§Ç¡A¥H¤è«K¥Î¤áÀ˯Á¡C¤èªk¬O³]¸m¦U¸`ÂIªºSortedÄݩʬ°¯u¡C

¡@¡@½sµ{®É¡AÁÙ¥i¥H§Q¥ÎTreeViewªºImageListÄÝ©Ê©MNodeªºImageÄݩʬ°©Ê½è¤£¦Pªº¸`ÂI«ü©w¤£¦Pªº¹Ï¥Ü¡A¬ü¤Æ¥Î¤á¤¶­±¡C¦p¦b¤W­±ªº¨Ò¤l¤¤¡A¦Vªí³æùزK¥[¤@­ÓImageList±±¨î¶µ¡]¤èªk¦P²K¥[TreeView¡^¡A¦b¨äÄݩʹï¸Ü¤è¶ôùØ´¡¤J¥|­Ó¹Ï¥Ü¡A³]¸m¦U¹Ï¥ÜªºKeyÄݩʤÀ§O¬°¡Groot¡Bopen¡Bclose¡Bleaf¡C¦b¤W­zTreeViewªºInit¨Æ¥óùØ°l¥[¤U­±ªº¥N½X¡G

¡@¡@THIS.imagelist=THISFORM.oleimage.OBJECT

¡@¡@THIS.Nodes(1).IMAGE=¡¬root¡¬

¡@¡@FOR imagelist=2 TO THIS.Nodes.COUNT

IF THIS.Nodes(imagelist).children>0

THIS.Nodes(imagelist).IMAGE=¡¬close¡¬

THIS.Nodes(imagelist).expandedimage=¡¬open¡¬

ELSE

THIS.Nodes(imagelist).IMAGE=¡¬leaf¡¬

ENDI

¡@¡@ENDF

¡@¡@»P¦bVB¤¤¨Ï¥ÎImageList¤£¦P¡A·í¦VVFPªí³æ¥[¤J¤@­ÓImageList«á¡A¦b³]­pª¬ºA¤U¡A¨Ã¤£¯àª½±µ³]¸mTreeViewªºImageListÄÝ©Ê¡C¸Ñ¨Mªº¿ìªk¬O¦bµ{¦¡¤¤«ü©wTreeViewªºImageListÄÝ©Ê¡A¨ÃÀ³³]¸m¬°¥]®eImageListªºOLE®e¾¹±±¨î¶µªºObject¡C

ªí1 ªí¦W¬°tree.dbf
³æ¦ì¦WºÙ
(¦r¤¸«¬,ªø«×20) ³æ¦ì¥N½X
(¦r¤¸«¬,ªø«×3) ·§ªp
(³Æµù«¬)
Á`¤½¥q 000 memo
¤À¤½¥q1 010 memo
¤H¨Æ³¡ 011 memo
¶}µo³¡ 012 memo
¥Í²£³¡ 013 memo
¤À¤½¥q2 020 memo
¤H¨Æ³¡ 021 memo
¸gÀ糡 022 memo

¡@¡@¹Ï1 ¬Y¤½¥qªº²Õ´µ²ºc

_________________
#############################
§Ö¼Ö¶ý«}¨t¦C©¯ºÖ¦v°t,³Ü¤Q¥þÂû´ö~­ì¨Ó©¯ºÖ¨º»ò²³æ!!

¾Ç·|VFP¨Ï¥ÎªÌªÀ°Ïªº·j´M,Code¤~·|§ó¦³½ì~
#############################
¦^³»ºÝ
À˵ø·|­û­Ó¤H¸ê®Æ µo°e¨p¤H°T®§
±q¤§«eªº¤å³¹¶}©lÅã¥Ü:   
µoªí·s¥DÃD   ¦^ÂÐ¥DÃD    VFP ·R¥ÎªÌªÀ°Ï ­º­¶ -> VFP °Q½×°Ï ©Ò¦³ªº®É¶¡§¡¬° ¥x¥_®É¶¡ (GMT + 8 ¤p®É)
²Ä1­¶(¦@1­¶)

 
«e©¹:  
±z µLªk ¦b³o­Óª©­±µoªí¤å³¹
±z µLªk ¦b³o­Óª©­±¦^ÂФ峹
±z µLªk ¦b³o­Óª©­±½s¿è¤å³¹
±z µLªk ¦b³o­Óª©­±§R°£¤å³¹
±z µLªk ¦b³o­Óª©­±¶i¦æ§ë²¼
±z µLªk ¦b³o­Óª©­±ªþ¥[ÀÉ®×
±z µLªk ¦b³o­Óª©­±¤U¸üÀÉ®×


Powered by phpBB © 2001, 2005 phpBB Group
¥¿Å餤¤å»y¨t¥Ñ phpbb-tw ºûÅ@»s§@