Avatar billede Slettet bruger
27. september 2012 - 21:49 Der er 10 kommentarer og
1 løsning

Sammenligne indhold i 2 listbox

Jeg har 2 listbox(1 og 2) med navne som jeg vil sætte op mod hinanden og udtrække forskellen som så skal vises i listbox 3.

Hvordan gør man lige det?
Avatar billede kroning Nybegynder
27. september 2012 - 22:01 #1
Mener du at du vil have en liste med de navne i box1 som ikke er i box2 og vice versa
Avatar billede Slettet bruger
27. september 2012 - 22:28 #2
nej...

Liste 1 er en fast parameter

Liste 2 er en dynamisk liste hvor navne forsvinder

Her er jeg interesseet i at få forskellen mellem liste 1 og liste 2 over i en liste 3.
Avatar billede Slettet bruger
27. september 2012 - 22:30 #3
ups vrøvler

det er som du beskriver

forskellen skal så vises i liste 3.
Avatar billede kroning Nybegynder
27. september 2012 - 23:29 #4
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    ListBox1: TListBox;
    ListBox2: TListBox;
    ListBox3: TListBox;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
procedure fd(b1,b2 : TListBox);
var
    i : integer;
begin
    for i:=0 to b1.Count-1 do
      if b2.Items.IndexOf(b1.Items[i])=-1 then
        ListBox3.Items.Add(b1.Items[i]);
end;

begin
    fd(ListBox1,ListBox2);
    fd(ListBox2,ListBox1);
end;

end.
Avatar billede kroning Nybegynder
27. september 2012 - 23:33 #5
Men hvis, som du måske skriver, navne i liste 2 indeholder kun navne som også er i liste 1 så behøver du ikke linien:
  fd(ListBox2,ListBox1);
Avatar billede Slettet bruger
28. september 2012 - 00:43 #6
får en fejl vedr., COUNT

Er der noget som skal uses?
28. september 2012 - 09:57 #7
Hej,

Prøv følgende:

LISTBOXx.Items.COUNT  (hvor x = 1 , 2 eller 3)...

istedet for LISTBOXx.Count 

-- dette kan være afhængig af den version af DELPHI du kører med.


KRISTIAN
Avatar billede Slettet bruger
28. september 2012 - 18:31 #8
Er lidt i tvivl om hvor det skal indsættes

kan ikke se der står nogen steder listbox.Count

Køre Delphi 5 Interprise
Avatar billede kroning Nybegynder
28. september 2012 - 18:39 #9
for i:=0 to b1.Items.Count-1 do
Avatar billede Slettet bruger
07. oktober 2012 - 00:31 #10
Takker kroning

smid et svar...
Avatar billede kroning Nybegynder
07. oktober 2012 - 00:43 #11
Svar
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester