AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ListBox einträge ändern

Ein Thema von maxmax · begonnen am 30. Mär 2008 · letzter Beitrag vom 1. Apr 2008
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von maxmax
maxmax

Registriert seit: 21. Jun 2007
Ort: Garmisch-Partenkirchen
107 Beiträge
 
Delphi 7 Personal
 
#1

ListBox einträge ändern

  Alt 30. Mär 2008, 11:08
jetzt hab ich abern och eine frage:
ich hab ein paar edits, die die ListBox1 inhalte auslesen und über die man die bestehenden inhalte der ListBox bearbeiten kann
und zwar so:
Delphi-Quellcode:
procedure TForm1.AendernClick(Sender: TObject);
begin
try
if ListBox1.ItemIndex<>-1 then
begin
ListBox1.Items.Insert(ListBox1.ItemIndex, Name.Text+' | '+Ansprechpartner.Text+' | '+Strasse.Text+' | '+Ort.Text+' | '+Telefon.Text+' | '+Telefax.Text+' | '+Mobil.Text+' | '+EMail.Text);
ListBox1.Items.Delete(ListBox1.ItemIndex);
end
else
ShowMessage ('Es müssen Einträge markiert sein!');
except
ShowMessage ('Falsche Eingaben!');
end;
end;
wenn ich nun aber diese procedure im programm aufrufe, passiert nichts! warum?
Max S.
mfg maxmax
http://www.maxxam.de
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: ListBox einträge ändern

  Alt 30. Mär 2008, 11:13
Hallo Max,

du fügst eine Zeile an einer bestimmten Stelle ein und löschst sie sofort wieder. Du möchtest aber eigentlich die nachfolgende Zeile löschen.

Grüße vom marabu

Bei genauem Hinsehen willst du weder Löschen noch Einfügen:

Delphi-Quellcode:
procedure TForm1.AendernClick(Sender: TObject);
begin
  with ListBox1 do
    if ItemIndex < 0
      then ShowMessage ('Es muss ein Eintrag markiert sein!')
      else Items[ItemIndex] := Name.Text +' | ' + Ansprechpartner.Text + ' |
                             + Strasse.Text + ' | ' + Ort.Text + ' | ' + Telefon.Text
                             + ' | ' + Telefax.Text + ' | ' + Mobil.Text + ' | ' + EMail.Text;
end;
Du möchtest auch keine reservierten Wörter (name) als Komponentennamen verwenden. Außerdem möchtest du auch nicht, dass der Benutzer deines Programms den Button Aendern anklicken kann, wenn kein Item ausgewählt ist.
  Mit Zitat antworten Zitat
Benutzerbild von ghost007
ghost007

Registriert seit: 31. Okt 2005
Ort: München
1.024 Beiträge
 
Delphi 7 Personal
 
#3

Re: ListBox einträge ändern

  Alt 30. Mär 2008, 11:15
lol ^^ das könnte daranliegen, dass du den eintrag den du mit insert einträgst dannach wieder löschst

MfG - Ghost007

P.S. Änder das mal wie folgt ab


//EDIT:
Delphi-Quellcode:
procedure TForm1.AendernClick(Sender: TObject);
 var
  tmp:integer;
begin
try
if ListBox1.ItemIndex<>-1 then
begin
tmp:=ListBox1.ItemIndex;
ListBox1.Items.Insert(tmp+1, Name.Text+' | '+Ansprechpartner.Text+' | '+Strasse.Text+' | '+Ort.Text+' | '+Telefon.Text+' | '+Telefax.Text+' | '+Mobil.Text+' | '+EMail.Text);
ListBox1.Items.Delete(tmp);
end
else
ShowMessage ('Es müssen Einträge markiert sein!');
except
ShowMessage ('Falsche Eingaben!');
end;
end;
Christian
Es gibt möglich Dinge und unmöglich Dinge.
Für unmögliche braucht man lediglich etwas länger.
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#4

Re: ListBox einträge ändern

  Alt 30. Mär 2008, 11:19
Das geht so auch nicht, Christian.

Wenn Du das Item löscht, ist der ItemIndex weg. Das heißt, Du musst Dir den ItemIndex erst aberspeichern und dann beim Insert den abgespeicherten verwenden.

Delphi-Quellcode:
var
  I: Integer;
begin
  if ListBox1.ItemIndex<>-1 then
  begin
    I := ListBox1.ItemIndex;
    ListBox1.Items.Delete(I);//diese zeile von unten nach oben verschieben
    ListBox1.Items.Insert(I, 'Simple Test');
  end;
end;
So z.B. funktioniert das ganze wieder.
  Mit Zitat antworten Zitat
Benutzerbild von ghost007
ghost007

Registriert seit: 31. Okt 2005
Ort: München
1.024 Beiträge
 
Delphi 7 Personal
 
#5

Re: ListBox einträge ändern

  Alt 30. Mär 2008, 11:20
Zitat von Die Muhkuh:
Das geht so auch nicht, Christian.

Wenn Du das Item löscht, ist der ItemIndex weg. Das heißt, Du musst Dir den ItemIndex erst aberspeichern und dann beim Insert den abgespeicherten verwenden.
habe deswegen meinen beitrag grade editiert

MfG - Ghost007
Christian
Es gibt möglich Dinge und unmöglich Dinge.
Für unmögliche braucht man lediglich etwas länger.
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#6

Re: ListBox einträge ändern

  Alt 30. Mär 2008, 11:21
Ja, ich hab auch gerade gesehen.

Btw. Max: Ich weiß nicht, was Du vor hast, aber wäre eine TListView für Dein Vorhaben nicht besser geeignet?
  Mit Zitat antworten Zitat
Benutzerbild von maxmax
maxmax

Registriert seit: 21. Jun 2007
Ort: Garmisch-Partenkirchen
107 Beiträge
 
Delphi 7 Personal
 
#7

Re: ListBox einträge ändern

  Alt 30. Mär 2008, 11:39
Eure Vorschläge zum ändern von oben funktionieren auch ned!!!

Wo finde ich die TListView??

EDIT: ahh ich hab scho gefunden.
Max S.
mfg maxmax
http://www.maxxam.de
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#8

Re: ListBox einträge ändern

  Alt 30. Mär 2008, 11:40
Unter Win32 ist die.

Zitat:
Eure Vorschläge zum ändern von oben funktionieren auch ned!!!
Gibt es keine Kekse für das Krümelmonster?
  Mit Zitat antworten Zitat
Benutzerbild von maxmax
maxmax

Registriert seit: 21. Jun 2007
Ort: Garmisch-Partenkirchen
107 Beiträge
 
Delphi 7 Personal
 
#9

Re: ListBox einträge ändern

  Alt 30. Mär 2008, 11:46
Zitat von Die Muhkuh:
Unter Win32 ist die.

Zitat:
Eure Vorschläge zum ändern von oben funktionieren auch ned!!!
Gibt es keine Kekse für das Krümelmonster?
ich habs auch grad gefunden 8)

das versteh ich jetzt nicht!
Was muss ich jetzt ändern das alles funktioniert?
Max S.
mfg maxmax
http://www.maxxam.de
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#10

Re: ListBox einträge ändern

  Alt 30. Mär 2008, 11:47
Naja, erstmal solltest Du uns nochmal den Code zeigen, weil die Vorschläge von Christian und mir funktionieren ohne Probleme.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz