Quelltexte/ Codesnippets |  |  |   |   |    | Ich habe mal das Treeview ebenfalls als INC aus dem Hauptprogramm herausgezogen. KompilierenMarkierenSeparieren************** Gruppenmanager.prf **************
 $I Globale_Defs.INC
 $I lokale_Gruppen_listen.INC
 $I Netzwerkgruppen_listen.INC
 $I Alle_user_listen.INC
 $I Imageliste.INC
 $I Treeview_Add_Item.INC
 $I Fülle_Treeview.INC
 $I Treeviewitemtext.INC
 $I Privilegien_listen.INC
************** Hauptprogramm *******************
Windowstyle 512 + 31
Windowtitle "Gruppenmanager"
Window 0,0-640,440
@InitCommonControls()
LET SORTIERLISTE&=CreateSortedListbox(%HWND,"",%maxx+30,%MAXY+30,0,0)
@Showwindow(SORTIERLISTE&,0)
Let bearbeiten&=@Control("Button","bearbeiten",$10000+$40000000+$10000000+$400000+$1000,440,80,150,30,%HWND,3002,%HINSTANCE)
Let hinzufügen&=@Control("Button","hinzufügen",$10000+$40000000+$10000000+$400000+$1000,440,20,150,30,%HWND,3003,%HINSTANCE)
Let löschen&=@Control("Button","löschen",$10000+$40000000+$10000000+$400000+$1000,440,140,150,30,%HWND,3004,%HINSTANCE)
Enablewindow bearbeiten&,0
Enablewindow hinzufügen&,0
Enablewindow löschen&,0
Let GU_Treeview&=@Control("SysTreeView32","",$40000000+$10000000+$800000+$200000+$0002+$0010+$0020+$0001,40,20,250,300,%HWND,3005,%Hinstance)
Erzeuge_Imageliste
@sendmessage(GU_TreeView&,$1109,0,Imagelist&) Imageliste dem Treeview zuweisen
Update_GU_Treview
Whilenot %MENUITEM=-2
    waitinput
    Let TV_ROOT&=@sendmessage(GU_Treeview&,$110A,$0,0)
    LET TV_SELECTED&=@sendmessage(GU_Treeview&,$110A,$0009,0)
    TV_Getitemtext TV_SELECTED& Text des selektierten Treeviewitems ermiteln
    LET Text_Von_TV_ITEM$=@$(0)
    IF @or(TV_SELECTED&=TV_User&,@or(TV_SELECTED&=TV_Lokale_Gruppen&,TV_SELECTED&=TV_Netzwerkgruppen&))
        Enablewindow hinzufügen&,1
        Enablewindow bearbeiten&,0
        Enablewindow löschen&,0
    Elseif TV_SELECTED&=TV_Sonstige&
        Enablewindow bearbeiten&,0
        Enablewindow hinzufügen&,0
        Enablewindow löschen&,0
    ElseIF TV_ROOT&=TV_Sonstige&
        Enablewindow bearbeiten&,1
        Enablewindow löschen&,0
        Enablewindow hinzufügen&,0
    elseif TV_ROOT&=TV_USER&
        Enablewindow bearbeiten&,1
        Enablewindow löschen&,1
        Enablewindow hinzufügen&,0
    elseif TV_ROOT&=TV_Netzwerkgruppen&
        Enablewindow bearbeiten&,1
        Enablewindow löschen&,1
        Enablewindow hinzufügen&,0
    elseif TV_ROOT&=TV_lokale_gruppen&
        Enablewindow bearbeiten&,1
        Enablewindow löschen&,1
        Enablewindow hinzufügen&,0
    else
        Enablewindow bearbeiten&,0
        Enablewindow hinzufügen&,0
        Enablewindow löschen&,0
    endif
    IF Buttonclicked(hinzufügen&)
        Beep
    ElseIF Buttonclicked(bearbeiten&)
        Beep
    ElseIF Buttonclicked(löschen&)
        Beep
    endif
    Drawtext 0,0,TEXT_VON_TV_ITEM$+@Space$(255) Zum Testen
wend
@Destroywindow(GU_Treeview&)
@ImageList_Destroy(Imagelist&)
 |  
  |  |   |   |  |  |   |  
 
 
  |   |    |  KompilierenMarkierenSeparieren************** Gruppenmanager.prf **************
 $I Globale_Defs.INC
 $I lokale_Gruppen_listen.INC
 $I Netzwerkgruppen_listen.INC
 $I Alle_user_listen.INC
 $I Sonstige_Gruppen_listen.INC
 $I Imageliste.INC
 $I Treeview_Add_Item.INC
 $I Fülle_Treeview.INC
 $I Treeviewitemtext.INC
 $I Privilegien_listen.INC
************** Hauptprogramm *******************
Windowstyle 512 + 31
Windowtitle "Gruppenmanager"
Window 0,0-640,440
@InitCommonControls()
LET SORTIERLISTE&=CreateSortedListbox(%HWND,"",%maxx+30,%MAXY+30,0,0)
@Showwindow(SORTIERLISTE&,0)
Let bearbeiten&=@Control("Button","bearbeiten",$10000+$40000000+$10000000+$400000+$1000,440,80,150,30,%HWND,3002,%HINSTANCE)
Let hinzufügen&=@Control("Button","hinzufügen",$10000+$40000000+$10000000+$400000+$1000,440,20,150,30,%HWND,3003,%HINSTANCE)
Let löschen&=@Control("Button","löschen",$10000+$40000000+$10000000+$400000+$1000,440,140,150,30,%HWND,3004,%HINSTANCE)
Enablewindow bearbeiten&,0
Enablewindow hinzufügen&,0
Enablewindow löschen&,0
Let GU_Treeview&=@Control("SysTreeView32","",$40000000+$10000000+$800000+$200000+$0002+$0010+$0020+$0001,40,20,250,300,%HWND,3005,%Hinstance)
Erzeuge_Imageliste
@sendmessage(GU_TreeView&,$1109,0,Imagelist&) Imageliste dem Treeview zuweisen
Update_GU_Treview
Whilenot %MENUITEM=-2
    waitinput
    LET TV_SELECTED&=@sendmessage(GU_Treeview&,$110A,$0009,0)
    Let TV_ROOT&=@sendmessage(GU_Treeview&,$110A,$3,TV_SELECTED&)
    TV_Getitemtext TV_SELECTED& Text des selektierten Treeviewitems ermiteln
    LET Text_Von_TV_ITEM$=@$(0)
    IF @or(TV_SELECTED&=TV_User&,@or(TV_SELECTED&=TV_Lokale_Gruppen&,TV_SELECTED&=TV_Netzwerkgruppen&))
        Enablewindow hinzufügen&,1
        Enablewindow bearbeiten&,0
        Enablewindow löschen&,0
    Elseif TV_SELECTED&=TV_Sonstige&
        Enablewindow bearbeiten&,0
        Enablewindow hinzufügen&,0
        Enablewindow löschen&,0
    ElseIF TV_ROOT&=TV_Sonstige&
        Enablewindow bearbeiten&,1
        Enablewindow löschen&,0
        Enablewindow hinzufügen&,0
    elseif TV_ROOT&=TV_USER&
        Enablewindow bearbeiten&,1
        Enablewindow löschen&,1
        Enablewindow hinzufügen&,0
    elseif TV_ROOT&=TV_Netzwerkgruppen&
        Enablewindow bearbeiten&,1
        Enablewindow löschen&,1
        Enablewindow hinzufügen&,0
    elseif TV_ROOT&=TV_lokale_gruppen&
        Enablewindow bearbeiten&,1
        Enablewindow löschen&,1
        Enablewindow hinzufügen&,0
    else
        Enablewindow bearbeiten&,0
        Enablewindow hinzufügen&,0
        Enablewindow löschen&,0
    endif
    IF Buttonclicked(hinzufügen&)
        Beep
    ElseIF Buttonclicked(bearbeiten&)
        Beep
    ElseIF Buttonclicked(löschen&)
        Beep
    endif
    Drawtext 0,0,TEXT_VON_TV_ITEM$+@Space$(3)+@STR$(TV_ROOT&)+@Space$(255) Zum Testen
wend
@Destroywindow(GU_Treeview&)
@ImageList_Destroy(Imagelist&)
 |  
  |  |   |   |  |  |   |  
 
 
  |  
 Zum QuelltextThemenoptionen | 2.592 Betrachtungen |  
 ThemeninformationenDieses Thema hat 1 Teilnehmer:  |