OSDN Git Service

20021009版ソース
[seraphyscrtools/SeraphyScriptTools.git] / TestScript / tree_list.vbs
1 '------------------------------
2 '  TreeView & ListView Sample
3 '------------------------------
4 Option Explicit 
5 dim obj,tree,listview
6
7 set obj = CreateObject("SeraphyScriptTools.Instance")
8 WScript.ConnectObject obj.mainframe,"event_"
9
10 obj.mainframe.SetPlacement ,,500,500
11 with obj.mainframe.form
12         .label "TreeView",10
13         .Label("ListView",10).SetPlacement 250
14         set tree = .treeview(15,10).SetID(40)
15         set listview = .listview("\8d\80\96Ú\96¼ :\94Ô\8d\86 ",,10).SetID(41).SetPlacement(250)
16         .ControlPad ,5
17         .button("ADD",4).SetID(50)
18         .button("Delete",5).SetID(54).SetPlacement 400
19         .button("EXPAND",4).SetID(51)
20         .ControlBreak
21         .button("SHOW",4).SetID(52)
22         .button("Delete",4).SetID(53)
23         .Button("EXIT",5).SetID(1).SetPlacement 400
24 end with
25
26 ' !!\83A\83C\83e\83\80\82ð\8f\89\8aú\89»\82·\82é\82É\82Í\83E\83B\83\93\83h\83E\82ª\8dì\90¬\82³\82ê\82Ä\82¢\82È\82¯\82ê\82Î\82È\82ç\82È\82¢!!
27 obj.mainframe.setwindowstyle(0,2,0).setplacement(,,,300).open("TreeView & ListView TEST").BackColor = "&HC0C0C0"
28 tree.addString "HELLO1"
29 tree.addString "HELLO2"
30 with tree.addString("HELLO3")
31         .Create "CHILD1"
32         .Create "CHILD2"
33         .Create "CHILD3"
34 end with
35
36 obj.mainframe.domodal
37
38 '--------------
39 '   \83n\83\93\83h\83\89
40 '--------------
41 sub event_OnCommand
42         dim ev
43         set ev = obj.mainframe.event
44         if    ( ev.parameter = 50) then   ' <= ADD
45                 call AddItem
46         elseif( ev.parameter = 51) then   ' <= EXPAND
47                 call Expand
48         elseif( ev.parameter = 52) then   ' <= SHOW
49                 call ShowItem
50         elseif( ev.parameter = 53) then   ' <= DELETE(TREEVIEW)
51                 call DeleteTreeItem
52         elseif( ev.parameter = 54) then   ' <= DELETE(LISTVIEW)
53                 call DeleteListItem
54         elseif( ev.parameter = 40) then   ' <= TREEVIEW
55                 call SelectItem
56         else
57                 obj.dialog.messagebox "\83R\83}\83\93\83h\94Ô\8d\86=" & ev.parameter
58         end if
59 end sub
60
61 '-------------
62 dim iteminsertcount
63 sub AddItem
64         ' \83c\83\8a\81[\83r\83\85\81[\82É\83A\83C\83e\83\80\82ð\92Ç\89Á\82·\82é
65         dim arr
66         arr = obj.dialog.MultiOpenFileDialog
67         if(isArray(arr)) then
68                 dim x,itm
69                 if(isObject(tree.CurrentSelectedItem)) then
70                         set itm = tree.CurrentSelectedItem
71                         for each x in arr
72                                 iteminsertcount = iteminsertcount + 1
73                                 with itm.Create(x)
74                                         .Object.Value("Number") = iteminsertcount
75                                         .Select
76                                 end with
77                         next
78                 else
79                         ' \83\8b\81[\83g\82É\92Ç\89Á\82·\82é
80                         for each x in arr
81                                 iteminsertcount = iteminsertcount + 1
82                                 tree.addString(x).Object.Value("Number") = iteminsertcount
83                         next
84                 end if
85         end if
86 end sub
87
88 sub Expand
89         if(isObject(tree.CurrentSelectedItem)) then
90                 tree.CurrentSelectedItem.Expand
91         end if
92 end sub
93
94 sub ShowItem
95         if(isObject(tree.CurrentSelectedItem)) then
96                 obj.dialog.messagebox "\82±\82Ì\83A\83C\83e\83\80\82Í" & tree.CurrentSelectedItem.object.Value("Number") & "\94Ô\96Ú\82É\91}\93ü\82³\82ê\82Ü\82µ\82½\81B"
97         end if
98 end sub
99
100 sub DeleteTreeItem
101         if(isObject(tree.CurrentSelectedItem)) then
102                 tree.CurrentSelectedItem.Erase
103         end if
104 end sub
105
106 sub DeleteListItem
107         dim x
108         if(listview.selectedcount > 0) then
109                 ' \91I\91ð\83A\83C\83e\83\80\82Ì\97ñ\8b\93\82Í\83X\83i\83b\83v\83V\83\87\83b\83g\82È\82Ì\82Å
110                 ' \97ñ\8b\93\92\86\82É\83A\83C\83e\83\80\82Ì\8c¸\8f­\82ª\82 \82é\82Æ\83X\83i\83b\83v\83V\83\87\83b\83g\82Í\96³\8cø\82É\82È\82é
111                 listview.DeleteSelectedItem
112         else
113                 obj.dialog.messagebox "\91I\91ð\82ª\82 \82è\82Ü\82¹\82ñ",0,1
114         end if
115 end sub
116
117 sub SelectItem
118         if(isObject(tree.CurrentSelectedItem)) then
119                 dim itm,idx,count
120                 set itm = tree.CurrentSelectedItem
121                 idx = listview.addstring(itm.text)
122                 with listview
123                         count = tree.CurrentSelectedItem.object.Value("Number")
124                         .setcolumntext idx,1,count
125                         with .itemobject(idx)
126                                 ' \98A\91z\94z\97ñ\82ÉSORT??\82Æ\82¢\82¤\83L\81[\82ð\8dì\90¬\82·\82é\82Æ\83\8a\83X\83g\83r\83\85\81[\82Í\83\\81[\83g\82ð\8ds\82¤
127                                 .value("SORT0") = itm.text
128                                 .value("SORT1") = int(count)
129                         end with
130                 end with
131         end if
132 end sub
133
134 sub event_OnContextMenu
135         dim ev,cmd
136         set ev = obj.mainframe.event
137         if(ev.parameter = 41) then
138                 cmd = obj.mainframe.trackpopupmenu("\83A\83C\83e\83\80\82ð\8dí\8f\9c")
139                 if(cmd = 1)then
140                         call DeleteListItem
141                 end if
142         elseif(ev.parameter = 40) then
143                 cmd = obj.mainframe.trackpopupmenu("\83A\83C\83e\83\80\82ð\8dí\8f\9c,\83J\83E\83\93\83g\82ð\95\\8e¦\82·\82é")
144                 if(cmd = 1) then
145                         call DeleteTreeItem
146                 elseif(cmd = 2) then
147                         call ShowItem
148                 end if
149         end if
150 end sub