Liste kann man nicht mackiren

Anfängerfragen zum Programmieren mit PureBasic.
pjanfred
Beiträge: 130
Registriert: 01.03.2006 15:41
Wohnort: Dortmund
Kontaktdaten:

Liste kann man nicht mackiren

Beitrag von pjanfred »

Liste kann man nicht mackiren bitte helft mir:

Code: Alles auswählen

Enumeration
#Fenster_1
#Panal_Fach
#Panal_Fach1
#Panal_Fach2
#Panal_Fach3
#Panal_Fach4
#Panal_Fach5
#Panal_Fach6
#Panal_Fach7
#Einstellungen
#Ein_Lis
EndEnumeration
Dim Fach.s(10)
Dim Gruppe1.s(10)
Dim Gruppe2.s(10)
Dim Gruppe3.s(10)
Dim Gruppe4.s(10)
Dim Gruppe5.s(10)
Dim Gruppe6.s(10)
Dim Gruppe7.s(10)
If OpenPreferences("data.txt")
For i.w = 1 To 7
Fach(i)=ReadPreferenceString("Fach"+Str(i),"")
Gruppe1(i)=ReadPreferenceString("Fach1G"+Str(i),"")
Gruppe2(i)=ReadPreferenceString("Fach2G"+Str(i),"")
Gruppe3(i)=ReadPreferenceString("Fach3G"+Str(i),"")
Gruppe4(i)=ReadPreferenceString("Fach4G"+Str(i),"")
Gruppe5(i)=ReadPreferenceString("Fach5G"+Str(i),"")
Gruppe6(i)=ReadPreferenceString("Fach6G"+Str(i),"")
Gruppe7(i)=ReadPreferenceString("Fach7G"+Str(i),"")
Next
EndIf

If OpenWindow(#Fenster_1,0,0,700,500,#PB_Window_SystemMenu|#PB_Window_ScreenCentered , "Schülerverwalter 1.0")
CreateGadgetList(WindowID(#Fenster_1))
PanelGadget(#Panal_Fach,0,0,700,500)
        If Fach(1) = ""
          Else
          AddGadgetItem (#Panal_Fach,-1,Fach(1))
        PanelGadget (#Panal_Fach1,0,0,700,500)
        CloseGadgetList()
          EndIf
         If Fach(2) = ""
          Else
          AddGadgetItem (#Panal_Fach,-1,Fach(2))
        PanelGadget (#Panal_Fach2,0,0,700,500)
        CloseGadgetList()
          EndIf
           If Fach(3) = ""
          Else
          AddGadgetItem (#Panal_Fach,-1,Fach(3))
        PanelGadget (#Panal_Fach3,0,0,700,500)
        CloseGadgetList()
          EndIf
           If Fach(4) = ""
          Else
          AddGadgetItem (#Panal_Fach,-1,Fach(4))
        PanelGadget (#Panal_Fach4,0,0,700,500)
        CloseGadgetList()
          EndIf
           If Fach(5) = ""
          Else
          AddGadgetItem (#Panal_Fach,-1,Fach(5))
        PanelGadget (#Panal_Fach5,0,0,700,500)
        CloseGadgetList()
          EndIf
           If Fach(6) = ""
          Else
          AddGadgetItem (#Panal_Fach,-1,Fach(6))
        PanelGadget (#Panal_Fach6,0,0,700,500)
        CloseGadgetList()
          EndIf
           If Fach(7) = ""
          Else
          AddGadgetItem (#Panal_Fach,-1,Fach(7))
        PanelGadget (#Panal_Fach7,0,0,700,500)
        CloseGadgetList()
          EndIf
        AddGadgetItem (#Panal_Fach,-1,"Einstelungen")
        PanelGadget (#Einstellungen,0,0,700,500)
         ListIconGadget(#Ein_Lis,50,10,600,200,"",100,#PB_ListIcon_FullRowSelect|#PB_ListIcon_AlwaysShowSelection)
         RemoveGadgetColumn(#Ein_Lis, 0)

         AddGadgetColumn(#Ein_Lis,0,"Fach",100)
         For i.w = 1 To 7
         AddGadgetColumn(#Ein_Lis,i,"Klasse"+Str(i),70)
        
         

         Next
        
         AddGadgetItem(#Ein_Lis,-1,Fach(1)+Chr(10)+Gruppe1(1)+Chr(10)+Gruppe1(2)+Chr(10)+Gruppe1(3)+Chr(10)+Gruppe1(4)+Chr(10)+Gruppe1(5)+Chr(10)+Gruppe1(6)+Chr(10)+Gruppe1(7))
         AddGadgetItem(#Ein_Lis,-1,Fach(2)+Chr(10)+Gruppe2(1)+Chr(10)+Gruppe2(2)+Chr(10)+Gruppe2(3)+Chr(10)+Gruppe2(4)+Chr(10)+Gruppe2(5)+Chr(10)+Gruppe2(6)+Chr(10)+Gruppe2(7))
         AddGadgetItem(#Ein_Lis,-1,Fach(3)+Chr(10)+Gruppe3(1)+Chr(10)+Gruppe3(2)+Chr(10)+Gruppe3(3)+Chr(10)+Gruppe3(4)+Chr(10)+Gruppe3(5)+Chr(10)+Gruppe3(6)+Chr(10)+Gruppe3(7))
         AddGadgetItem(#Ein_Lis,-1,Fach(4)+Chr(10)+Gruppe4(1)+Chr(10)+Gruppe4(2)+Chr(10)+Gruppe4(3)+Chr(10)+Gruppe4(4)+Chr(10)+Gruppe4(5)+Chr(10)+Gruppe4(6)+Chr(10)+Gruppe4(7))
         AddGadgetItem(#Ein_Lis,-1,Fach(5)+Chr(10)+Gruppe5(1)+Chr(10)+Gruppe5(2)+Chr(10)+Gruppe5(3)+Chr(10)+Gruppe5(4)+Chr(10)+Gruppe5(5)+Chr(10)+Gruppe5(6)+Chr(10)+Gruppe5(7))
         AddGadgetItem(#Ein_Lis,-1,Fach(6)+Chr(10)+Gruppe6(1)+Chr(10)+Gruppe6(2)+Chr(10)+Gruppe6(3)+Chr(10)+Gruppe6(4)+Chr(10)+Gruppe6(5)+Chr(10)+Gruppe6(6)+Chr(10)+Gruppe6(7))
         AddGadgetItem(#Ein_Lis,-1,Fach(7)+Chr(10)+Gruppe7(1)+Chr(10)+Gruppe7(2)+Chr(10)+Gruppe7(3)+Chr(10)+Gruppe7(4)+Chr(10)+Gruppe7(5)+Chr(10)+Gruppe7(6)+Chr(10)+Gruppe7(7))
         
        CloseGadgetList()
CloseGadgetList()
 For i.w= 1 To 7
          If Gruppe1(i) = ""
          Else
          AddGadgetItem(#Panal_Fach1,-1,Gruppe1(i))
          EndIf
          If Gruppe2(i) = ""
          Else
          AddGadgetItem(#Panal_Fach2,-1,Gruppe2(i))
          EndIf
           If Gruppe3(i) = ""
          Else
          AddGadgetItem(#Panal_Fach3,-1,Gruppe3(i))
          EndIf
           If Gruppe4(i) = ""
          Else
          AddGadgetItem(#Panal_Fach4,-1,Gruppe4(i))
          EndIf
           If Gruppe5(i) = ""
          Else
          AddGadgetItem(#Panal_Fach5,-1,Gruppe5(i))
          EndIf
           If Gruppe6(i) = ""
          Else
          AddGadgetItem(#Panal_Fach6,-1,Gruppe6(i))
          EndIf
           If Gruppe7(i) = ""
          Else
          AddGadgetItem(#Panal_Fach7,-1,Gruppe7(i))
          EndIf
   Next 
Repeat
 WindowEventID=WaitWindowEvent()
 Select WindowEventID

      Case #PB_Event_Menu

        Select EventMenuID()  ; To see which menu has been selected


        EndSelect

Case #PB_Event_CloseWindow

    Quit = 1

      

    EndSelect
  If WindowEventID = #PB_Event_Gadget
   
    Select EventGadgetID()
      
       
    EndSelect
   
  EndIf
 
Until Quit=1

 
EndIf

End  
Hir das Proplem:

Code: Alles auswählen

  AddGadgetItem (#Panal_Fach,-1,Fach(7))
        PanelGadget (#Panal_Fach7,0,0,700,500)
        CloseGadgetList()
          EndIf
        AddGadgetItem (#Panal_Fach,-1,"Einstelungen")
        PanelGadget (#Einstellungen,0,0,700,500)
         ListIconGadget(#Ein_Lis,50,10,600,200,"",100,#PB_ListIcon_FullRowSelect|#PB_ListIcon_AlwaysShowSelection)
         RemoveGadgetColumn(#Ein_Lis, 0)

         AddGadgetColumn(#Ein_Lis,0,"Fach",100)
         For i.w = 1 To 7
         AddGadgetColumn(#Ein_Lis,i,"Klasse"+Str(i),70)
        
         

         Next
        
Zuletzt geändert von pjanfred am 31.03.2006 15:17, insgesamt 1-mal geändert.
Benutzeravatar
Deeem2031
Beiträge: 1232
Registriert: 29.08.2004 00:16
Wohnort: Vorm Computer
Kontaktdaten:

Beitrag von Deeem2031 »

Rechtschreibfehler sind berabsichtigt.
Na wenn das so ist, dass du extra Fehler einbaust, dann mach ich mir auch nicht die Mühe mir den Code anzugucken. Zumal der ja auch "super" strukturiert ist... :freak:

(Ich weiß, dass das der Anfängerbereich ist, aber man kanns auch übertreiben)
Bild
[url=irc://irc.freenode.org/##purebasic.de]irc://irc.freenode.org/##purebasic.de[/url]
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Man kann auch nicht nur auf Gleichheit prüfen, auf Ungleichheit <> geht
auch, würde viele Else ersparen :wink:


//vergessenes Wort nachgetragen :oops:
Zuletzt geändert von ts-soft am 30.03.2006 23:19, insgesamt 1-mal geändert.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
jear
Beiträge: 288
Registriert: 17.10.2004 01:59
Wohnort: Ammerland

Beitrag von jear »

(Ich weiß, dass das der Anfängerbereich ist, aber man kanns auch übertreiben)
Die Väter des Anfängerbereichs haben bestimmt nicht an die Schlichtdeutschen gedacht, die sich vor ihrer eigenen Sprache fürchten.
Übrigens : Wer mit seiner eigenen Sprache nicht klar kommt, der wird nie mit einer Programmiersprache klar kommen.
Die verzeiht nämlich keine Fehler, auch keine "berabsichtigten".
Man ist nie zu alt zum lernen, auch wenn man dabei manchmal alt aussieht!
pjanfred
Beiträge: 130
Registriert: 01.03.2006 15:41
Wohnort: Dortmund
Kontaktdaten:

Beitrag von pjanfred »

Wenn ihr mir Helfen würdet wer ich fro.
Ich habe hir kein Thema eröfnet wie findet ihr meine Signatur.
Benutzeravatar
Lebostein
Beiträge: 674
Registriert: 13.09.2004 11:31
Wohnort: Erzgebirge

Beitrag von Lebostein »

Sieht ganz nach einem Bug bei verschachtelten GadgetLists aus (Debugger anmachen!):

Code: Alles auswählen

OpenWindow(0,0,0,700,500, "Schülerverwalter 1.0",#PB_Window_SystemMenu|#PB_Window_ScreenCentered )

CreateGadgetList(WindowID(0))
  PanelGadget(1, 10, 10, 700, 500)
    PanelGadget(2, 10, 10, 700, 500)
      ButtonGadget(3, 10, 10, 100, 100, "")
    CloseGadgetList()
  CloseGadgetList()
CloseGadgetList()
Benutzeravatar
DataMiner
Beiträge: 220
Registriert: 10.10.2004 18:56

Beitrag von DataMiner »

Wenn ihr mir Helfen würdet wer ich fro.
Ich habe hir kein Thema eröfnet wie findet ihr meine Signatur.
[offtopic]
Wenn du eine Lese- / Rechtschreibschwäche hast - und danach sieht es wirklich aus - dann wäre ein Hinweis auf diese die bessere Signatur
[/offtopic]
__________________________________________
Weniger glauben - mehr wissen!
------------------------------------------------------
Proud beneficial owner of SpiderBasic, PureBasic 3.x, 4.x, 5.x and PureVisionXP
Benutzeravatar
freedimension
Admin
Beiträge: 1987
Registriert: 08.09.2004 13:19
Wohnort: Ludwigsburg
Kontaktdaten:

Beitrag von freedimension »

So, und jetzt unterhaltet euch wieder über das Problem* oder soll ich hier dichtmachen? ;)

*und zwar nicht das mit der Rechtschreibe
Beginne jeden Tag als ob es Absicht wäre!
Bild
BILDblog
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

> So, und jetzt unterhaltet euch wieder über das Problem

würde ich ja gerne. Leider habe ich nicht den geringsten Schimmer,
was pjanfred überhaupt von uns will.

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

@pjanfred
In Deinem Code wird alles mögliche wiederholt, vielleicht würde es helfen,
den Code soweit zu kürzen, das der Fehler reproduzierbar ist, aber ohne
diese Wiederholungen.
Ich habe die Erfahrung gemacht, das man bei diesem Vorgehen, den Fehler
oftmals selber entdeckt, und wenn nicht, einem bei einem so gekürztem
Code schneller geholfen wird.

Die Fehlerbeschreibung ist auch etwas dürftig!
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten