AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit Listview und SmallImages

Ein Thema von Gutelo · begonnen am 12. Apr 2014 · letzter Beitrag vom 12. Apr 2014
 
Gutelo

Registriert seit: 29. Sep 2013
152 Beiträge
 
#1

Problem mit Listview und SmallImages

  Alt 12. Apr 2014, 09:20
Hallo,

ich habe eine TListView mit ViewStyle=vsList.

Mit einem Button-Klick soll das TListView sowohl mit Text-Eintraegen gefuellt werden als auch mit den zugehoerigen kleinen Icons. Im konkreten Fall ist es eine Liste von Laendern mit den jeweiligen Landesflaggen. Die Prozedur die beim Button-Klick aufgerufen wird sieht wie folgt aus:

Delphi-Quellcode:

procedure Plot_Listview(CSet : TCountrySet; LV : TListView);
var IL : TImageList;
    z : TCountries;
    i,j : integer;
begin
  // Falls SmallImages zugewiesen, dann loesche es
  if LV.SmallImages <> nil then LV.SmallImages.Free;
  LV.Clear;
  // Erstelle ImageList
  IL := TImageList.Create(nil);
  IL.Width := 16;
  IL.Height := 11;
  i := 0;
  // Lese alle Laender in der Menge CSet ein und fuege sie der Liste hinzu
  for z in CSet do
  begin
    LV.Items.Add;
    LV.Items[i].Caption := Get_Country(z);
    LV.Items[i].ImageIndex := i;
    IL.Add(Get_Flag_BMP(z),nil); // <- Fuege Flagge der ImageList hinzu
    Inc(i,1);
  end;
  // Zuweisung der ImageList an die Listview
  LV.SmallImages := IL;
  LV.SortType := stboth;
end;
Das Problem: Wenn ich einmal auf den Button-Klicke ist alles wie es sein soll. Wenn ich jedoch ein zweites mal klicke, dann stimmen die Flaggen nicht mehr: bei sehr wenigen Laendern sind die Flaggen richtig, bei den restlichen Laendern wird immer die gleiche Flagge angezeigt.

Ich vermute, dass der Fehler bei Listview selbst liegt (Zuordnung Item <-> Bild), da die Bilder in ListView.SmallImages auch nach dem zweiten Klick in Ordnung sind (habe ich testweise in einem separaten TImage anzeigen lassen).

Irgendjemand eine Idee dazu? Fuer mich wirkt es wie ein Bug bei TListView.

Gutelo
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:00 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz