29. januar 2004 - 12:59Der er
8 kommentarer og 1 løsning
CheckListBox mod database
Hej Eksperter,
Jeg står over for følgende problem:
Jeg har en liste med items: Item1 Item2 Item3 Item4 (denne liste er variabel, så brugeren senere selv kan tilføje/fjerne)
Disse items skal sættes i en CheckListBox, og brugeren skal kunne krydse til og fra... De valgte items skal nu lagres i en database i formatet "Item1, Item2, Item4"...
Dette skulle i sig selv ikke være noget større problem, men når jeg nu vil åbne databasen igen, så skal min liste med items tjekkes op mod det som ligger i databasen og krydses af i CheckListBoxen...
Har nogen en snedig plan til, hvordan jeg kan gøre dette, eller evt. en anden løsning som fungerer ca. på samme måde?
Hejsa Du bør lave en database, hvor du f.eks. har 2 felter: et boolean felt til check og et felt til beskrivelse. Denne database knytter du til så til en DBCtrl-grid. Input til denne DBCtrl-grid, kan så have en sql tilknyttet, som peger på databasen. Mvh Pjotre
Loades linie for linie fra et memo-felt og tilføjes til CheckListBoxen... For hver linie tjekkes det, om linien, f.eks. Item1 også eksisterer i et andet memo-felt (noget string-compare, a la ereg() i PHP). Hvis den gør, skal item'et checkes, ellers ikke.
Har ingen idé om, hvordan denne kode kunne se ud... Har I?
Listen med items er smidt i ListBox1, og de items som de skal tjekkes op mod ligger i memo1 som Item1,Item2,Item5,
var i,x,p,s : Integer ; t : string; begin
For i := 0 To (ListBox1.Items.Count-1) Do Begin
p := pos(ListBox1.Items.Strings[i]+',',memo1.Lines.Text); t := ListBox1.Items.Strings[i]; if p <> 0 then begin s := CheckListBox1.Items.Add(t); CheckListBox1.Checked[s] := true; end else begin CheckListBox1.Items.Add(t); end; end;
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.