ListViewGadget

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Pure_Beginner
Beiträge: 247
Registriert: 29.09.2011 21:49
Computerausstattung: i7 9XX 4000 MHZ / 12 GB RAM / Win 8.1 64Bit / Win 7 64Bit
Wohnort: Brühl

ListViewGadget

Beitrag von Pure_Beginner »

Hallo Leute,
habe ein seltsames Verhalten in meinem ListViewGadget in zusammenlang mit dem LVSORT von Gonzal festgestellt.

folgender code funktioniert ohne Probleme mit eingeschaltetem Debugger.

Code: Alles auswählen

Procedure Main()
  Protected.i EventID, MenuID, GadgetID,WindowID, i, quitfrm_Haupt, SelectedIndex, Counts
  Protected.s text
  
  
  If Window_frm_Haupt()
    SetGadgetState(#Gadget_frm_Haupt_opt_Gruppe1, 1) ;preisgruppe 1 beim start auswaehlen
    StatusBarText(#StatusBar_frm_Haupt, 1, "s-quadrat-konzepte 2013 ©" , #PB_StatusBar_Center)
    StatusBarText(#StatusBar_frm_Haupt, 2, "DiMiDoSoft 2013 ©" , #PB_StatusBar_Center)
    StatusBarText(#StatusBar_frm_Haupt, 3,FormatDate("%dd.%mm.%yyyy",Date()), #PB_StatusBar_Right)
    PruefeButtons()
    
    quitfrm_Haupt=0
    Repeat
      EventID  =WaitWindowEvent()
      MenuID   =EventMenu()
      GadgetID =EventGadget()
      WindowID =EventWindow()
      
      Select EventID
        Case #PB_Event_CloseWindow
          If WindowID=#Window_frm_Haupt
            Beenden()
          EndIf
        Case #PB_EventType_LeftClick
          If PureLVSORT_SelectGadgetToSort(#Gadget_frm_Haupt_ListIcon, #PureLVSORT_ShowClickedHeader_IconRight) = #PureLVSORT_Ok            
            PureLVSORT_SetColumnType(#Gadget_frm_Haupt_ListIcon, 0, #PureLVSORT_Numeric)
            PureLVSORT_SetColumnType(#Gadget_frm_Haupt_ListIcon, 1, #PureLVSORT_String) 
            PureLVSORT_SetColumnType(#Gadget_frm_Haupt_ListIcon, 2, #PureLVSORT_NoSorting)
            PureLVSORT_SetColumnType(#Gadget_frm_Haupt_ListIcon, 3, #PureLVSORT_NoSorting)
            PureLVSORT_SetColumnType(#Gadget_frm_Haupt_ListIcon, 4, #PureLVSORT_NoSorting)
            PureLVSORT_SetColumnType(#Gadget_frm_Haupt_ListIcon, 5, #PureLVSORT_NoSorting)
            PureLVSORT_SetColumnType(#Gadget_frm_Haupt_ListIcon, 6, #PureLVSORT_NoSorting)
            PureLVSORT_SetColumnType(#Gadget_frm_Haupt_ListIcon, 7, #PureLVSORT_NoSorting)
            PureLVSORT_SetColumnType(#Gadget_frm_Haupt_ListIcon, 8, #PureLVSORT_NoSorting)
            PureLVSORT_SetColumnType(#Gadget_frm_Haupt_ListIcon, 9, #PureLVSORT_NoSorting)
            PureLVSORT_SetColumnType(#Gadget_frm_Haupt_ListIcon, 10, #PureLVSORT_NoSorting)
            PureLVSORT_SetColumnType(#Gadget_frm_Haupt_ListIcon, 11, #PureLVSORT_NoSorting)
            PureLVSORT_SetColumnType(#Gadget_frm_Haupt_ListIcon, 12, #PureLVSORT_Float)
            PureLVSORT_SetColumnType(#Gadget_frm_Haupt_ListIcon, 13, #PureLVSORT_Float)
            PureLVSORT_SetColumnType(#Gadget_frm_Haupt_ListIcon, 14, #PureLVSORT_Numeric)  
          EndIf
          
        Case #PB_Event_Menu
          Select MenuID
            Case #MenuBar_frm_Haupt_Laden
              Laden()
            Case #MenuBar_frm_Haupt_Speichern
              Speichern()
            Case #MenuBar_frm_Haupt_Drucken
              Drucken()
            Case #MenuBar_frm_Haupt_Beenden
              Beenden()
            Case #MenuBar_frm_Haupt_Senden
              Senden()
            Case #MenuBar_frm_Haupt_Weiterleiten
              Swiftopt()
            Case #MenuBar_frm_Haupt_Info
              MessageRequester("Info...", "s-qudrat-konzepte 2013")
          EndSelect
          
        Case #PB_Event_Gadget
          Select GadgetID
              
            Case #Gadget_frm_Haupt_lstv_Artikel
              Select EventType()   
                Case #PB_EventType_LeftClick
                  i = GetGadgetState(#Gadget_frm_Haupt_lstv_Artikel) 
                  text =  GetGadgetItemText(#Gadget_frm_Haupt_lstv_Artikel,i)
                  SetGadgetText(#Gadget_frm_Haupt_str_Artikel,text)     
              EndSelect 
            Case #Gadget_frm_Haupt_ListIcon
              GridAuswahl()         
            Case #Gadget_frm_Haupt_str_Laenge
            Case #Gadget_frm_Haupt_str_Breite
            Case #Gadget_frm_Haupt_Panel_Haupt
            Case #Gadget_frm_Haupt_ListIcon
            Case #Gadget_frm_Haupt_btn_Hinzufuegen
              Hinzufuegen()
            Case #Gadget_frm_Haupt_btn_Update
              Update()
            Case #Gadget_frm_Haupt_btn_entfernen
              Entfernen()
            Case #Gadget_frm_Haupt_btn_Loeschen
              Loeschen()
            Case #Gadget_frm_Haupt_opt_Gruppe1
            Case #Gadget_frm_Haupt_opt_Gruppe3
              
          EndSelect  
      EndSelect
    Until quitfrm_Haupt
    CloseWindow(#Window_frm_Haupt)
  EndIf
  End
EndProcedure
Main()

Code: Alles auswählen

Case #PB_EventType_LeftClick
Dieser Aufruf funktioniert ohne Debugger nicht.
Schalte ich den Debugger aus oder erstelle eine EXE funktioniert das Sortieren nicht, bekomme aber keine Fehlermeldung (klar ohne Debugger :wink: ),
Hat jemand einen Tipp ?

Grüße
Christian

Edit:
PB 5.11 X86
PureBasic 5.30 Beta 3 (X64/X86) | Win 8 (64) Pro / Win 7 (64) Pro | Es ist der Hobbyist[/col
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: ListViewGadget

Beitrag von Kiffi »

PureLVSORT_SelectGadgetToSort() ist ein Befehl, der in der Regel
nur einmal nach Erstellung des ListIconGadgets aufgerufen werden muss.

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
Pure_Beginner
Beiträge: 247
Registriert: 29.09.2011 21:49
Computerausstattung: i7 9XX 4000 MHZ / 12 GB RAM / Win 8.1 64Bit / Win 7 64Bit
Wohnort: Brühl

Re: ListViewGadget

Beitrag von Pure_Beginner »

@Kiffi

habs gleich ungeschrieben alles bestens, danke für den Tipp und die schnelle Antwort :allright:

Das mit dem Debugger find ich dennoch seltsam :?

Nochmals Danke und schönen Sonntag
Grüße
Christian
PureBasic 5.30 Beta 3 (X64/X86) | Win 8 (64) Pro / Win 7 (64) Pro | Es ist der Hobbyist[/col
Antworten