____________________


Code: Alles auswählen
;-Enumeration
Enumeration
#Fenster_1 ;Fenster
;Menue-Datei:
#Menue
#Menue_
#Menue_Laden
#Menue_Speichern
#Menue_Sichern
#Menue_Beenden
;Menue-Klassenarbeit
#Menue_Noten_Hinzufuegen
;Menue-Schüler
#Menue_Schueler_Hinzufuegen
#Menue_Schueler_Loeschen
#Menue_Schueler_Berarbeitungsmenue
;Menue-Drucken
#Menue_Aktuelle_Liste_Drucken
#Menue_Aktuelle_Liste_Drucken_mit_Bemerkung
#Menue_Aktuelle_Liste_Drucken_mit_Ueberschrift
#Menue_Aktuelle_Liste_Drucken_mit_beidem
;Menue-Ende
;Gadget-Liste
#Verwaltungsliste
#Name
#Text_Name
#Bemerkung
#Text_Bemerkung
#Note_Muendlich_1
#Note_Muendlich_2
#Note_Muendlich_3
#Note_Muendlich_4
#Note_Muendlich_5
#Note_Muendlich_6
#Text_Note_Muendlich
#Note_schriftlich_1
#Note_schriftlich_2
#Note_schriftlich_3
#Note_schriftlich_4
#Note_schriftlich_5
#Note_schriftlich_6
#Text_Note_schriftlich
;Laden
#Laden_Fach
#Laden_Klasse
#Laden_Laden
#Laden_Neue_Klasse
#Laden_Klasse_Umbennernen
#Laden_Neues_Fach
#Laden_Fach_Umbenennen
#Laden_Fach_Loeschen
#Laden_Klasse_Loeschen
;Zusatzmenü
#Zusatz_Schueler_Hinzufuegen
#Zusatz_Schueler_Loeschen
#Zusatz_Einfaren
EndEnumeration
;-Variablen
Fachselek.s=""
Dim Fach.s(1000)
Dim Klasse.s(1000)
;-OpenPreferences
OpenPreferences("Fach.txt")
Repeat
Anzahl+1
Fach(Anzahl)=ReadPreferenceString("Fach"+Str(Anzahl),"")
Until Fach(Anzahl)=""
ClosePreferences()
;-OpenWindows
If OpenWindow(#Fenster_1,0,0,700,330,#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_MinimizeGadget , "Schülerverwalter 1.1")
;-Menue
If CreateMenu(#Menue,WindowID())
MenuTitle("Datei")
MenuItem(#Menue_Laden,"Laden")
MenuItem(#Menue_Speichern,"Speichern")
MenuItem(#Menue_Sichern,"Sichern")
MenuBar()
MenuItem(#Menue_Beenden,"Beenden")
MenuTitle("Klassenarbeit")
MenuItem(#Menue_Noten_Hinzufuegen,"Noten Hinzufügen")
MenuTitle("Schüler")
MenuItem(#Menue_Schueler_Hinzufuegen,"Hinzufügen")
MenuItem(#Menue_Schueler_Loeschen,"Löschen")
MenuItem(#Menue_Schueler_Berarbeitungsmenue,"Berarbeitungsmenu öffnen")
MenuTitle("Drucken")
MenuItem(#Menue_Aktuelle_Liste_Drucken,"Aktuelle Liste")
MenuItem(#Menue_Aktuelle_Liste_Drucken_mit_Bemerkung,"mit Bemerkung")
MenuItem(#Menue_Aktuelle_Liste_Drucken_mit_Ueberschrift,"mit Überschrift")
MenuItem(#Menue_Aktuelle_Liste_Drucken_mit_beidem,"mit Beiden")
EndIf
;-GadgetList
CreateGadgetList(WindowID(#Fenster_1))
;--Verwaltungsliste
ListIconGadget(#Verwaltungsliste,0,0,WindowWidth(),250,"Name",150)
TextGadget(#Text_Name,0,252,100,20,"Name:")
StringGadget(#Name,0,270,101,20,"")
TextGadget(#Text_Bemerkung,100,252,100,20,"Bemerkung:")
StringGadget(#Bemerkung,100,270,101,20,"")
TextGadget(#Text_Note_Muendlich,200,252,100,20,"Note Mündlich:")
StringGadget(#Note_Muendlich_1,200,270,21,20,"")
StringGadget(#Note_Muendlich_2,220,270,21,20,"")
StringGadget(#Note_Muendlich_3,240,270,21,20,"")
StringGadget(#Note_Muendlich_4,260,270,21,20,"")
StringGadget(#Note_Muendlich_5,280,270,21,20,"")
StringGadget(#Note_Muendlich_6,300,270,21,20,"")
TextGadget(#Text_Note_schriftlich,320,252,100,20,"Note Schriftlich:")
StringGadget(#Note_schriftlich_1,321,270,21,20,"")
StringGadget(#Note_schriftlich_2,341,270,21,20,"")
StringGadget(#Note_schriftlich_3,361,270,21,20,"")
StringGadget(#Note_schriftlich_4,381,270,21,20,"")
StringGadget(#Note_schriftlich_5,401,270,21,20,"")
StringGadget(#Note_schriftlich_6,421,270,21,20,"")
DateGadget(500,600,270,100,20)
ListViewGadget(#Laden_Fach,1,330,300,279)
ListViewGadget(#Laden_Klasse,300,330,300,279)
;-Fach Laden
ButtonGadget(#Laden_Laden,600,330,100,25,"Laden")
ButtonGadget(#Laden_Neue_Klasse,600,370,100,25,"Neue Klasse")
ButtonGadget(#Laden_Klasse_Umbennernen,600,410,100,25,"Klasse Umbenenen")
ButtonGadget(#Laden_Klasse_Loeschen,600,450,100,25,"Klasse Löschen")
ButtonGadget(#Laden_Neues_Fach,600,490,100,25,"Neues Fach")
ButtonGadget(#Laden_Fach_Umbenennen,600,530,100,25,"Fach Umbenenen")
ButtonGadget(#Laden_Fach_Loeschen,600,570,100,25,"Fach Löschen")
;-Schüler Verwaltung
ButtonGadget(#Zusatz_Schueler_Hinzufuegen,WindowWidth(),50,100,25,"Schüler Hinzufügen")
ButtonGadget(#Zusatz_Schueler_Loeschen,WindowWidth(),100,100,25,"Schüler Löschen")
ButtonGadget(#Zusatz_Einfaren,WindowWidth(),150,100,25,"<<Einfaren<<")
;-Schüler Liste erstellen
AddGadgetColumn(#Verwaltungsliste,1,"Bemerkung",200)
For i.w = 2 To 7
AddGadgetColumn(#Verwaltungsliste,Str(i),Str(i-1),25)
Next
AddGadgetColumn(#Verwaltungsliste,Str(i),"",20)
For i.w = 9 To 14
AddGadgetColumn(#Verwaltungsliste,Str(i),Str(i-8),25)
Next
For i.w = 1 To Anzahl-1
AddGadgetItem(#Laden_Fach,-1,Fach(i))
Next
SetGadgetState(#Laden_Neues_Fach,1)
Repeat
WindowEventID=WaitWindowEvent()
;-Windows Menuü
Select WindowEventID
Case #PB_Event_Menu
Select EventMenuID() ; To see which menu has been selected
Case #Menue_Laden
HideMenu(#Menue_Laden,1)
If Zahl_Y < 1
If Zahl_X>0
Repeat
Zahl_X-1
ResizeWindow(WindowWidth()-2,WindowHeight())
MoveWindow(WindowX()+1,WindowY())
Gosub Windowsimbereich
Until Zahl_X<0
EndIf
Repeat
Zahl_Y+1
ResizeWindow(WindowWidth(),WindowHeight()+2)
MoveWindow(WindowX(),WindowY()-1)
Gosub Windowsimbereich
Until Zahl_Y=150
Else
Repeat
Zahl_Y+1
ResizeWindow(WindowWidth(),WindowHeight()+2)
MoveWindow(WindowX(),WindowY()-1)
Until Zahl_Y=170
Repeat
Delay(1)
Zahl_Y-1
ResizeWindow(WindowWidth(),WindowHeight()-2)
MoveWindow(WindowX(),WindowY()+1)
Gosub Windowsimbereich
Until Zahl_Y=150
EndIf
Case #Menue_Speichern
Case #Menue_Sichern
Case #Menue_Beenden
Quit=1
Case #Menue_Schueler_Berarbeitungsmenue
If Zahl_Y > 149
Repeat
Delay(1)
Zahl_Y-1
ResizeWindow(700,WindowHeight()-2)
MoveWindow(WindowX(),WindowY()+1)
Gosub Windowsimbereich
Until Zahl_Y=0
EndIf
If Zahl_X<50
Repeat
Zahl_X+1
ResizeWindow(WindowWidth()+2,WindowHeight())
MoveWindow(WindowX()-1,WindowY())
Gosub Windowsimbereich
Until Zahl_X>50
EndIf
EndSelect
Case #PB_Event_CloseWindow
Quit = 1
EndSelect
;-Windows Gadget
If WindowEventID = #PB_Event_Gadget
Select EventGadgetID()
Case #Laden_Laden
If Zahl_Y > 149
Repeat
Delay(1)
Zahl_Y-1
ResizeWindow(700,WindowHeight()-2)
MoveWindow(WindowX(),WindowY()+1)
Gosub Windowsimbereich
Until Zahl_Y=0
EndIf
Case #Zusatz_Einfaren
If Zahl_X>0
Repeat
Delay(1)
Zahl_X-1
ResizeWindow(WindowWidth()-2,WindowHeight())
MoveWindow(WindowX()+1,WindowY())
Gosub Windowsimbereich
Until Zahl_X<0
EndIf
Case #Laden_Neues_Fach
EndSelect
EndIf
;-Abfragen
If Winber=1
Gosub Windowsimbereich
EndIf
If GetGadgetState(#Laden_Fach)>-1 And Fachselek<>GetGadgetText(#Laden_Fach)
AnzahlFach.w=0
Fachselek=GetGadgetText(#Laden_Fach)
OpenPreferences(GetGadgetText(#Laden_Fach)+".txt")
Repeat
AnzahlFach+1
Klasse(AnzahlFach)=ReadPreferenceString("Klasse"+Str(AnzahlFach),"")
Until Klasse(AnzahlFach-1)="" And AnzahlFach>1
ClosePreferences()
ClearGadgetItemList(#Laden_Klasse)
For i.w = 1 To AnzahlFach-2
AddGadgetItem(#Laden_Klasse,-1,Klasse(i))
Next
EndIf
Until Quit=1
Repeat
Delay(1)
MoveWindow(WindowX(),WindowY()+2)
Until WindowX()>1024 Or WindowY()>768
EndIf
End
;-Gosub
Windowsimbereich:
Winber=0
If WindowX()>1020-WindowWidth()
MoveWindow(WindowX()-1,WindowY())
Winber=1
EndIf
If WindowX()<0
MoveWindow(WindowX()+1,WindowY())
Winber=1
EndIf
If WindowY()>700-WindowHeight()
MoveWindow(WindowX(),WindowY()-1)
Winber=1
EndIf
If WindowY()<0
MoveWindow(WindowX(),WindowY()+1)
Winber=1
EndIf
Return
Sag mal, ist das hier ein verspäteter Aprilscherz???Nach meiner neuen Strucktur gibt es kein Problem mehr.