Hey Leute: meine Script:
[autoit]#include <GuiListView.au3>
#include <GuiImageList.au3>
;var:....
Global $SysIni_path = @ScriptDir & '\members.ini'
Global $hListView
Global $hImage
Global $w_main
Opt("GuiOnEventMode", 1)
[/autoit][autoit][/autoit][autoit][/autoit][autoit]_main()
While Sleep (2000)
WEnd
Func _main()
_w_main()
_AddData()
EndFunc
Func _w_main()
Local $hImage, $hListView
; Erstellt eine GUI
$w_main = GUICreate("Window", 400, 350)
GUISetOnEvent(-3, "_w_main_close")
$B_unknown = GUICtrlCreateButton("B", 16, 280, 105, 25)
$B_offline = GUICtrlCreateButton("B", 144, 280, 105, 25)
$B_online = GUICtrlCreateButton("B", 272, 280, 105, 25)
$B_unknown_pc2 = GUICtrlCreateButton("B", 17, 312, 105, 25)
$B_offline_pc2 = GUICtrlCreateButton("B", 145, 312, 105, 25)
$B_online_pc2 = GUICtrlCreateButton("B", 273, 312, 105, 25)
$hListView = GUICtrlCreateListView("", 2, 2, 394, 268)
[/autoit][autoit][/autoit][autoit]; Lädt die Bilder
$hImage = _GUIImageList_Create()
_GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0xFF3030, 16, 16));ROT, Ansprechbar über 0 ==> Unknown
_GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0xCDCDC1, 16, 16));GRAU, Ansprechbar über 1 ==> Available
_GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0x00FF00, 16, 16));GRÜN, Ansprechbar über 2 ==> Online
_GUICtrlListView_SetImageList($hListView, $hImage, 1)
; Fügt die Spalten hinzu
_GUICtrlListView_InsertColumn($hListView, 0, "status", 140)
_GUICtrlListView_InsertColumn($hListView, 1, "name", 100)
_GUICtrlListView_InsertColumn($hListView, 2, "Datei", 100)
; Fügt die Items hinzu
_GUICtrlListView_AddItem($hListView, "Unknown", 1)
_GUICtrlListView_AddSubItem($hListView, 0, "S PC 1", 1);Zeile 0,Spalte 1 mit Text#
_GUICtrlListView_AddSubItem($hListView, 0, "irgendwas", 2)
_GUICtrlListView_AddItem($hListView, "error, but available", 0)
_GUICtrlListView_AddSubItem($hListView, 1, "S PC 2", 1)
_GUICtrlListView_AddSubItem($hListView, 1, "irgendwas", 2)
_GUICtrlListView_AddItem($hListView, "error2", 2)
_GUICtrlListView_AddSubItem($hListView, 2, "S PC 3", 1)
_GUICtrlListView_AddSubItem($hListView, 2, "C:\", 2)
GUISetState(@SW_SHOW, $w_main)
[/autoit][autoit][/autoit][autoit][/autoit][autoit]EndFunc;==> Hauptfenster
[/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]Func _w_main_close()
Exit
EndFunc;==> Hauptfenster-Schließen
Func _AddData()
[/autoit][autoit][/autoit][autoit][/autoit][autoit]EndFunc
[/autoit]und nun das gleiche script, wo ich aber das Hinzufüger der Spalten und Zeilen in einer Anderen Funktion mache:
[autoit]#include <GuiListView.au3>
#include <GuiImageList.au3>
;var:....
Global $SysIni_path = @ScriptDir & '\members.ini'
Global $hListView
Global $hImage
Global $w_main
Opt("GuiOnEventMode", 1)
[/autoit][autoit][/autoit][autoit][/autoit][autoit]_main()
While Sleep (2000)
WEnd
Func _main()
_w_main()
_AddData()
EndFunc
Func _w_main()
Local $hImage, $hListView
; Erstellt eine GUI
$w_main = GUICreate("Windowr", 400, 350)
GUISetOnEvent(-3, "_w_main_close")
$B_unknown = GUICtrlCreateButton("B", 16, 280, 105, 25)
$B_offline = GUICtrlCreateButton("B", 144, 280, 105, 25)
$B_online = GUICtrlCreateButton("B", 272, 280, 105, 25)
$B_unknown_pc2 = GUICtrlCreateButton("B", 17, 312, 105, 25)
$B_offline_pc2 = GUICtrlCreateButton("B", 145, 312, 105, 25)
$B_online_pc2 = GUICtrlCreateButton("B", 273, 312, 105, 25)
$hListView = GUICtrlCreateListView("", 2, 2, 394, 268)
[/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]EndFunc;==> Hauptfenster
[/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]Func _w_main_close()
Exit
EndFunc;==> Hauptfenster-Schließen
Func _AddData()
; Lädt die Bilder
$hImage = _GUIImageList_Create()
_GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0xFF3030, 16, 16));ROT, Ansprechbar über 0 ==> Unknown
_GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0xCDCDC1, 16, 16));GRAU, Ansprechbar über 1 ==> Available
_GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0x00FF00, 16, 16));GRÜN, Ansprechbar über 2 ==> Online
_GUICtrlListView_SetImageList($hListView, $hImage, 1)
; Fügt die Spalten hinzu
_GUICtrlListView_InsertColumn($hListView, 0, "status", 140)
_GUICtrlListView_InsertColumn($hListView, 1, "name", 100)
_GUICtrlListView_InsertColumn($hListView, 2, "Datei", 100)
; Fügt die Items hinzu
_GUICtrlListView_AddItem($hListView, "Unknown", 1)
_GUICtrlListView_AddSubItem($hListView, 0, "S PC 1", 1);Zeile 0,Spalte 1 mit Text#
_GUICtrlListView_AddSubItem($hListView, 0, "irgendwas", 2)
_GUICtrlListView_AddItem($hListView, "error, but available", 0)
_GUICtrlListView_AddSubItem($hListView, 1, "S PC 2", 1)
_GUICtrlListView_AddSubItem($hListView, 1, "irgendwas", 2)
_GUICtrlListView_AddItem($hListView, "error2", 2)
_GUICtrlListView_AddSubItem($hListView, 2, "S PC 3", 1)
_GUICtrlListView_AddSubItem($hListView, 2, "C:\", 2)
GUISetState(@SW_SHOW, $w_main)
[/autoit][autoit][/autoit][autoit]EndFunc
[/autoit]Und Letzteres Funktioniert leider nicht: ich hab alles Global deklariert, was nur geht...
Ich komm einfach nich drauf, warum das nich in einer Anderen Funktion seperat funktioniert:
Vielen dank für eure antworten
... kann mir denn niemand helfen oder hab ich zu umständlich beschrieben..
Edit: fehler im Quellcode selber erkannt: teilweise wurden die Variablen wieder Local deklariert..