ListBox : Ein Item zuviel

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

Farbfinsternis

Betreff: ListBox : Ein Item zuviel

BeitragDo, Okt 26, 2006 13:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Also, ich habe eine Listbox in welche in einer Schleife 14 Werte eingetragen werden. Überprüfungen der Ausgabe meines Zählwertes und der Ausgabe von CountGadgetItems() ergeben dass angeblich nur 14 Einträge vorgenommen werden. Es ist aber dauernd ein weiterer, leerer Eintrag vorhanden der mich nervt.
Kennt jemand dieses Problem und weiß wie es behoben werden kann?

Schonmal Denke für jeden sachdienlichen Hinweis.
Farbfinsternis.tv
 

Dreamora

BeitragDo, Okt 26, 2006 13:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Könnten wir den Code zu sehen bekommen der das Gadget erstellt und befüllt?

(ach ja, auch wenn übrigens nur 14 drin sind, so erzeugt ein Klick auf jede Position einen event, häufig mit item indices die garnicht existieren, das bei der Abfrage bedenken)
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Farbfinsternis

BeitragDo, Okt 26, 2006 14:06
Antworten mit Zitat
Benutzer-Profile anzeigen
Hmm, keine Ahnung ob der Code wirklich hilfreich ist, er hängt ja von einer ganzen Menge anderen Codes ab.
Code: [AUSKLAPPEN]

Function UpdateTileList(tileset:TTileset)
   ClearGadgetItems(lbx_tiles)
   
   If tileset <> Null
      Local icons:TIconStrip = LoadIconStrip(CreateIconStrip(tileset))
      SetGadgetIconStrip(lbx_tiles,icons)
   
      Local max_i:Int
            
      If tileset.tile_vars > 0
         max_i = tileset.frames/tileset.tile_vars
      Else
         max_i   = tileset.frames
      EndIf
      
      For Local i:Int = 0 To max_i-1
         AddGadgetItem(lbx_tiles,"",0,i)
      Next
      
      level.current_frame = 0
   EndIf
End Function

Diese Funktion macht nix anderes als mittels der Funktion CreateIconStrip(tileset) ein Tileset in einen IconStrip zu erstellen und diesen an die Listbox zu hängen.

Das Problem ist ja nun auch nicht so schlimm dass ich es nicht umgehen könnte, ich prüfe schon ob EventData() mir was sinnvolles zurück liefert was auch zu meinem Tileset passt. Aber ich hasse es so einen riesigen Überbau generieren zu müssen nur weil eine Third-Party Software meint sie müsse fleißiger sein als angefragt.
Farbfinsternis.tv
 

Dreamora

BeitragDo, Okt 26, 2006 15:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Nun, die Abfrage brauchst du sowieso. Wie gesagt, berechnet MaxGUI auch "nach den existierenden Items" weiterhin wie bei allen vorherigen den Index und gibt diesen zurück, egal ob da überhaupt etwas ist oder nicht. (sprich wenn du 10 einfügst und nach dem 10ten rein klickst wirst du dennoch den darauf folgenden Index als Data erhalten, nicht -1 oder sonst etwas)

Und MaxGUI ist nicht 3rd Party sondern First Party ...
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Farbfinsternis

BeitragDo, Okt 26, 2006 15:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Was MaxGUI intern berechnet ist mir Banane, ich verstehe die Notwendigkeit nicht dass ein Item mehr angezeigt werden muss als tatsächlich vorhanden sind.

user posted image
Farbfinsternis.tv
 

Dreamora

BeitragDo, Okt 26, 2006 17:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Nun, das Element hast leider nicht du zu verantworten sondern MaxGUI selbst.

Mindestes für den Moment lässt sich an diesem auch nichts ändern, fürchte ich.

Aber zumindest gerüchteweise soll das Windows MaxGUI aktuell überarbeitet werden, weil der aktuell verwendete Code (Blitz Plus) ziemliche Probleme hat (OSX Linux gehen, Windows nicht).
So ist so ziemlich alles was mit GadgetColor zu tun hat verbockt. Auch mit den Pixmaps auf Gadgets gibt es scheinbar aktuell gewisse Memory Probleme

urgs
OK bin mir mit dem GUI nimmer so sicher. Bin grad über den MaxEdit Thread gestolpert wo skid sagt das er nimmer für BRL arbeitet ...
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group