hm kunne godt bruge lidt mere info om hvad du ønsker? der er mange måder at søge på...
if listbox1.itemindex = -1 then exit // sikrer at et item er valgt if pos(listbox1.items.strings[listbox1.itemindex], edit1.text) <> 0 then showmessage('Fandt Tekst');
var I : Integer; begin for I := 0 to ListBox.Items.Count-1 do if Listbox.Items[I] = Edit.Text then ShowMessage('Findet pa linje: '+IntToStr(I+1)); end;
zerohero: Det er der vel igen grund til når ListBox objektet i forvejen har en funktion der kan fortælle dig det (Hvad den funktion så laver bag facaden er en hel anden sag ;))
Men ok. Det beviser jo bare at man kan løse den samme opgave på mange forskellige måder :)
Jeg kiggede ud fra hans egen ide-oplaeg, med at sammenligne en item med en edit.text, og taenkte at det nok var det han helst ville havde :)) - Ellers havde han jo ikke skrevet hans oplaeg (he he he...)
okay, det jeg spørger efter en en kode der gør følgende:
Jeg har lavet en kode der i en stringgrid søger efter nogen informationer der er lagt ind i den men hvís den brugeren sætter den til at søge efter ikke er der kommer der en error frem. (det drejer sig om et billetbestillingsprogram, lavet i datalogi på gym)
Jeg ville samtidig gerne have en liste over hvem der havde bestilt billeter som endu ikke havde afhentet dem. Derfor tænkte jeg at man kunne slå to fluger med et smæk, så når folk bestilte en billet, blev deres telefon nummer skrevet ind i list boksen. I den kode der så søger efter hvor i stringgriden et givent telefon nummer ligger, skal den så først sprøge om den text der er indtastet i edit.text findes et eller andet sted i listbox1.items
Altså en if sætning der spørger efter om det der står i en editbox, også står i min listobx?
Første med svaret får pointsne.
PS: Jeg er først hjemme søndag, men det bliver noget af det første jeg tjekker.
sorry, damn med stave og slå fejl: fluger (lol) = fluer. osv osv osv. Havde ikke læst det igennem
Det første er vist heller ikke helt tydeliigt.
Den løkke der søger efter hvor i stringgriden, telefon nummeret er lagt, den får programmet til at crashe, hvis nummeret der søges efter ikke findes. Derfor når man gemmer telefon nummeret skal den ikke blot gemme det i stringgriden, men også i en listbox. Når man så søger efter det skal den først spørge om det ligger i listboxen.
igen sorry for alle stave, -slå og gramatik fejlene
Indsæt en memo (memo1) og lav den visible:= false; samt edit1. Lav en procedure:
procedure TForm1... var nr: integer; text: string; alt: integer;
begin repeat memo1.lines.add(listbox1.items[nr]); text:= memo1.lines[nr]; nr:= nr +1; until text= ''; alt:= nr; nr:= 0; text:= ''; repeat memo1.clear; memo1.lines.add[listbox1.items[nr]); if memo1.lines[nr]= edit1.text then text:= memo1.lines[nr];//i edit1.text skrives søgeordet until nr= alt; if text<>'' then showmessage('Det står i felt' + inttostr(nr)) else showmessage('Ikke fundet');
for i:=0 to listbox1.items.count do begin if listbox1.items[i]=edit1.text then { et eller andet, når den er der! } end;
Jeg er ikke helt sikker på at den virker, men hvis ikke så indsæt igen en memo1, og sig:
var i: integer;
repeat memo1.lines.add(listbox1.items[i]); inc(i); until listbox1.items[i]=emptystr; for i:=0 to memo1.lines.count do begin if memo1.lines[i]=edit1.text then { et eller andet, når den er der! } end;
Den burde virke, men okay... det ligner meget vel det, som de andre også skrev :-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.