![]() |
listboxen mit einander verknüpfen
Also ich hab mal wieder eine Frage zu listboxen:
Ich will in einem Vokabelprogramm, das 2 listboxen hat, eine für die fremdsprachigen Vokabeln, die andere für die muttersprachige Vokabeln. Das hinzufügen neuer Vokabeln klappt, aber ein Problem ist das löschen der Vokabeln. Ich weiß zwar wie ich sie löschen kann, aber ich hab keine Ahnung wie ich, wenn ich in einer listbox eine Vokabel lösche (also zum Beispiel in der muttersprachigen Vokabelliste eine vokabel lösche) das in der anderen listbox die dementsprechende Vokabel gelöscht wird. (Die zusammengehörigen Vokabeln, zBs: go-gehen, sind in den listboxen an der selben stelle) Ich weiß nicht wie ich mein problem anderst erklären könnte. Wenn ihr etwas nicht verstanden habt dann fragt einfach nach! Hier noch die Art, mit der ich die Vokabeln lösche:
Delphi-Quellcode:
unit Unit1;
interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) ListBox1: TListBox; Button1: TButton; Button2: TButton; Label2: TLabel; Edit1: TEdit; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; implementation {$R *.DFM} procedure entferne (lBox : TListBox; eintrag : string); var i : Integer; begin for i := 0 To lBox.Items.Count-1 do if lBox.Items[i] = eintrag then begin lBox.Items.Delete(i); Exit end; end; procedure TForm1.Button1Click(Sender: TObject); begin entferne(ListBox1,Edit1.Text) end; procedure TForm1.Button2Click(Sender: TObject); begin Close end; end. |
Re: listboxen mit einander verknüpfen
Wenn du das so machen willst, und die entsprechenden Worte immer an der gleichen Position stehen, brauchst du dir doch nur den Index merken. Du ermittelst diesen ja schon mit deiner Löschproc - i
Edit: Warum verwendest du nicht IndexOf? Also statt:
Delphi-Quellcode:
besser
for i := 0 To lBox.Items.Count-1 do
if lBox.Items[i] = eintrag then...
Delphi-Quellcode:
i := lBox.Items.IndexOf(Eintrag);
|
Re: listboxen mit einander verknüpfen
Ich denk mal das was du meintest ist das hier
Delphi-Quellcode:
If Listbox1.ItemIndex > -1 then begin
Listbox1.Items.Delete(Listbox1.Itemindex); Listbox2.Items.Delete(Listbox1.Itemindex); end; |
Re: listboxen mit einander verknüpfen
DANKE! :cheers:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:42 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-2025 by Thomas Breitkreuz