Új hozzászólás Aktív témák
-
mandrake83
csendes tag
Sziasztok! Van egy problémám amire biztos tök egyszerű a válasz, de valahogy nem bírok rájönni... Van egy listboxom amihez egy gombra kattintva különböző feliratú elemeket adok hozzá. ez így néz ki, pl.:
listbox4.items[listbox4.items.count]:=' valami '
Idáig semmi gond, megy is szépen. a gond a törlésnél jelentkezik amit egy másik gombra kattintva szeretnék előhívni. simán DeleteSelected()-el nem tudom törölni sajna, mert vizsgálnom kell azt is, hogy milyen feliratot törlök, ugyanis ez további folyamatokhoz vezet majd. Ha például a ''valami'' feliratú elemet törlöm akkor vegyen el egy számból mondjuk 10-et, de ha nem ''valami'' feliratú elemet törlök akkor ne csináljon semmit. (A listában mindenféle feliratú elem van, nem csak a ''valami'' feliratú). a törlés így néz ki:
for m:=0 to listbox4.items.count-1 do
begin
if (listbox4.selected[m]) and (listbox4.items[m]='valami') then
begin
listbox4.DeleteSelected;
szam:=szam+10;
end;
end;
A törlés működik és el is veszi a szam változóból a 10-et, de MINDIG CSAK AKKOR HA AZ UTOLSÓ ELEMET TÖRLÖM. Tehát 3 elemű listából a 3-at törlöm, majd a 2.-at, majd az 1-t akkor működik minden. De ha én a 3 elemű listából az elsőt akarom törölni akkor leáll a program a ''List index out of bounds(2)'' hibaüzenettel.
Remélem érthető voltam, és köszi előre is a segítségeteket, mert már fél napja gondolkozom és próbálkozok de nem jön össze....
Új hozzászólás Aktív témák
- -65% Dell Latitude 7310 2in1: i7 10610U,16GB,256GB,13.3" Touch 100%sRGB 350nit,WWAN eSIM,Win11
- Samsung Galaxy S22 - Fekete - Független - 2025.03.05-ig garancia - Tökéletes állapot
- Endorfy Fortis 5 ARGB CPU hűtő áron alul! (3 db)
- Forradalmasítsd a digitális világodat a HoloLens 2-vel!
- ÚJ Dell Inspiron 7430 2-in-1 - 14" FHD+ IPS TOUCH 360 / i5-1335U / 16Gb DDR5 / 512Gb PCIe 4.0 / 3 ÉV