Combo aktualisiert nicht Listview wie erwünscht

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Tsuki-Namida
Beiträge: 633
Registriert: 17.11.2005 13:27
Kontaktdaten:

Combo aktualisiert nicht Listview wie erwünscht

Beitrag von Tsuki-Namida »

Hallo ich bin es schon wieder... ich habe ein Listview gemacht wo man die inhalt ändern können soll.

Ich habe ein Combo mit 3 auswhl möglichkeiten. Wenn ich den test mache wird im Debug immer der richtige Wert angezeigt. nur wenn ich dann die Exe zum genaueren Testen mache (nutze das script um das Verzeichis festzustellen wo sich die Exe befindet) wird die liste nicht aktualisiert. bzw. durch den Combo wird ein anderes Verzeichnis ausgelesen und in Listview angezeigt.

nun meine Frage...
Warum geht das nicht? :(

Code: Alles auswählen

  If GadgetID = #Combo_0
   
 Debug GetGadgetState(#Combo_0)
    
 ClearGadgetItemList(#Listview_0)
 Dir.s = GetExePath()
 If GetGadgetState(#Combo_0)=0
  alle.l = 1
  ElseIf GetGadgetState(#Combo_0)=1
  Dir + "Listen\Rundfunk\"
  ElseIf GetGadgetState(#Combo_0)=2
  Dir + "Listen\Privat\"
  EndIf
  If alle = 1
   Dir + "Listen\Rundfunk\"  
    If ExamineDirectory(50, Dir, "*.wr")
     While NextDirectoryEntry()=1
     AddGadgetItem(#Listview_0,-1,DirectoryEntryName()) 
    Wend
   EndIf
   Dir + "Listen\Privat\"
   If ExamineDirectory(50, Dir, "*.wr")
     While NextDirectoryEntry()=1
     AddGadgetItem(#Listview_0,-1,DirectoryEntryName())
     Wend
   EndIf
   If alle = 0
    Debug Dir
     If ExamineDirectory(50, Dir, "*.wr")
      While NextDirectoryEntry()=1
       AddGadgetItem(#Listview_0,-1,DirectoryEntryName())
       Wend
     EndIf
    EndIf
EndIf
    EndIf
Benutzeravatar
Konne
Beiträge: 764
Registriert: 30.03.2005 02:20
Kontaktdaten:

Beitrag von Konne »

Hab grad keine Zeit den fehler zu fiden. Aber eine Anmerkung:
verwende statt

Code: Alles auswählen

 If  GetGadgetState(#Combo_0) ..elseif  GetGadgetState(#Combo_0)...
lieber

Code: Alles auswählen

select GetGadgetState(#Combo_0)
case 1

case 2
...
endselect
Das ist erstens viel schneller da du dann nicht immer den Gadgetstate abfragen musst, was zeimlich lang dauert und 2 ist es IMHO übersichtlicher :allright:

Und noch eins:
weiß net ob ich dir helf aber die Funktion die den Path wo das Programm grad läuft ermittelt ermittelt wenn du es mit dem Debugger laufen lässt den Pfad in dem Pb dein Programm ausführt. Und das ist leider nicht in deinem Ordner. Ka obs was hilft.
Benutzeravatar
Tsuki-Namida
Beiträge: 633
Registriert: 17.11.2005 13:27
Kontaktdaten:

Beitrag von Tsuki-Namida »

Konne hat geschrieben:Und noch eins:
weiß net ob ich dir helf aber die Funktion die den Path wo das Programm grad läuft ermittelt ermittelt wenn du es mit dem Debugger laufen lässt den Pfad in dem Pb dein Programm ausführt. Und das ist leider nicht in deinem Ordner. Ka obs was hilft.
okay ich werde es versuchen ;)

zu dem Zitierten:
ich erstelle wen ich in der liste testen muss/möchte immer eine exe damit der path nur richtig sein kann ;)

[Edit]
:( immernoch das selbe proplem....
[/Edit]
Antworten