News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

TreeView

Started by RD, October 03, 2010, 02:25:26 AM

Previous topic - Next topic

RD

TREEVIEW example of a mult :Pi-column
QQ:285979593@qq.com
http://blog.csdn.net/X_FOCUS/archive/2010/07/20/5748365.aspx

; First invoke CreateClass, parent, _x, _y, _w, _h; the size of the initial control



   ; Return exe as a structure, according to their need to reconstruct events on the controls, no reasons to do it, huh, huh
  ; Base struct
  ; HXTree dd?
  ; HTv dd?
  ; HList dd?
  ; Header dd?
  ; XTreeProc dd?
  ; TvProc dd?
  ; ListProc dd?
  ; HeaderProc dd?
  ; NewListProc dd?
  ; NewTvProc dd?
  ; Base ends
   
; The second step; invoke InsertColumn, @ lx, @ pText; add size and name of the column Header


   ; Invoke InsertColumn, 50, CADD ("PID")
   ; Invoke InsertColumn, 80, CADD ("PPID")
   ; Invoke InsertColumn, 80, CADD ("Handles")
   ; Invoke InsertColumn, 80, CADD ("Threads")
       
  ; The third step; invoke TreeAddItem, offset ClassName, 0; Add Tree Node
     

    ; Invoke TreeAddItem, offset ClassName, edx
    ; Eax as a doubly linked list data structure
    ; Ecx total number of rows returned
    ; Edx TREE node returns a handle
   
   ; Fourth step; invoke ListAddItem, edx, 1, offset ClassName; add multiple columns of data corresponding to the node

   

   ; Invoke ListAddItem, edx, FALSE, 1, offset ClassName

    ; Tree node handle, LIST column, set or get a node, add a string to the LIST
    ; Invoke ListAddItem, edx, TRUE, 2, offset ClassName
   
; To this collection work is completed, the following is a function of LIB class export instructions (complete later ^ _ ^)





; Initial creation and specify the parent window and the size of the

CreateClass PROTO: DWORD,: DWORD, DWORD,: DWORD

   

; Initiate a Header. Column width, column headers

InsertColumn PROTO: DWORD,: DWORD

   


; Insert a Tree node. Character buffer specify a node name, parent node

TreeAddItem PROTO: DWORD,: DWORD

 
; Set or get a node's data item. Tree node handle, (FLASE to add a data item / TRUE to set up a data item), to get or set the data column index, the character buffer

ListAddItem PROTO: DWORD,: DWORD, DWORD,: DWORD

   


; Access to additional data additional items (up to 256 DWORD) each node. Node handle, return the buffer
GetData_L PROTO: DWORD,: DWORD

   

; To delete all nodes
Deleteallitems PROTO

   

; Enumerate all nodes. Tree node handle, a callback function accepts the handle

EnuemAllNodes PROTO: DWORD,: DWORD

   

; Enumeration node. Tree nodes handle search type (TVGN_XXX), search methods (TVGN_NEXT / PREVIOUS)

; Whether the depth of search (FALSE / TRUE), to search for the node handle, a callback function accepts the handle to accept


EnuemChildNodes PROTO: DWORD,: DWORD, DWORD,: DWORD, DWORD,: DWORD

 

  ; Pop up a window to separate child nodes of the data, "Figure on the right." Whether the depth of child separation data.
@ @ PopWindow proto: dword

:bdg :bdg

Twister

Quite a few bugs. :boohoo:

Unicode is being displayed and all that.