![]() |
Re: In einer ListBox einen Eintrag suchen bzw. Eintrag änder
Verstehe nicht ganz,ich fordere den Benutzer auf per Klick auf eine Zeile in der Listbox für das Ändern zu markieren. Ist das passiert, wird über die procedure Listbox, die Zeile in die Editfelder gelegt. Dann wird vom Benutzer geändert und erst dann wird der Button Ändern benutzt. Der die Zeile dann in die Listbox zurück führt. Jedoch als neue Zeile und nicht die alte markierte überschreibt.
|
Re: In einer ListBox einen Eintrag suchen bzw. Eintrag änder
Moin, nur ein kleiner ergänzender Tipp, mhr verrate ich nicht, denn man lernt am besten durch Herumprobieren. :stupid:
Du fügst ja per Items.Add beim Ändern ein Item hinzu, das darfst du natürlich dann nicht machen, da du keinen neuen Eintrag hinzufügen, sondern einen bestehenden ändern möchtest. Merke dir den ItemIndex (evtl. ändert er sich auch nicht) und überschreibe diesen beim Ändern wieder, wie es Axel geschrieben hat:
Delphi-Quellcode:
ListBox.Items[IndexVar] := 'Geänderter Text';
|
Re: In einer ListBox einen Eintrag suchen bzw. Eintrag änder
So die Herren, Programm ist fertig. :dance: + :party: Ging aber einfacher, ohne eure Vorschläge über das Löschen der markierten Zeile nach Einlagerung in die Editfelder.
Möchte mich jetzt nochmals recht herzlich bei euch bedanken. Macht weiter so!!!! :thumb: Lg jeany Bye :hi: |
Re: In einer ListBox einen Eintrag suchen bzw. Eintrag änder
:lol: Das ist aber mit Kanonen auf Spatzen geschossen. ;) Stell dir vor, der User markiert nur eine Zeile, um sich den Inhalt anzuschauen und beschließt danach, einen neuen Eintrag hinzuzufügen. Er ändert also die Daten entsprechend und will sie hinzuügen und *schwuppdi* ist der alte Eintrag weg. Und so viel komplizierter ist der Weg über einen 2. Button auch nicht. ;)
|
Re: In einer ListBox einen Eintrag suchen bzw. Eintrag änder
Ok, du hast gewonnen. Nicht überlegt, aber nach deiner Schilderung und erfolgter Probe logisch und einsichtlich. Bin aber mit meinem 'Delphi-Latein' echt am Ende. Zudem ist ja jeztt auch durch die OnKlick-Eigenschaft ein Hindernis für das Löschen einer Zeile aufgetreten, weil jetzt springen ja alle Elemente in die Editfelder sobald nur eine Zeile in der Listbox markiert ist.
Da war wohl die Freude ein wenig zu früh, ärgerlich.... nun gut, gebe nicht auf!!! |
Re: In einer ListBox einen Eintrag suchen bzw. Eintrag änder
Zitat:
|
Re: In einer ListBox einen Eintrag suchen bzw. Eintrag änder
Mir fehlt echt das Verständnis, weil, vielleicht beschreibe ich es auch zu blöd...
Ich habe die Listbox auf OnClick gestellt, beim anklicken gehen alle Elemente aus der Zeile in die oberen Editfelder, dann kann der User ändern, ohne bis hierher einen Button gedrückt zu haben. Erst wenn er alle Korrekturen vorgenommen hat drückt er den Button um die Elemente der Zeile zurück in die Listbox zu bringen. Was soll der zweite Button nun????? :wall: Daher dachte ich und es klappte ja auch, dass im gleichen Atemzug wo der Button gedrückt wird die alte markierte Zeile gelöscht wird. Deshalb 'am Ende'. |
Re: In einer ListBox einen Eintrag suchen bzw. Eintrag änder
Aber der User soll doch gleichzeitig auch die Möglichkeit haben, neue Elemente hinzuzufügen, oder? Daher mußt du eben beide Fälle (markiertes Element ändern, neues Element hinzufügen) gesondert betrachten.
Wenn du jetzt also einfach in deinem OnClick das Löschen des markierten Elements auschaltest, sollte doch alles funktionieren. Ein Klick auf ein Item -> Editfelder werden gefüllt Klick auf Ändern -> Übernahme der Daten in das markierte ListBox-Item Klick auf Hinzufügen -> Neues Element mit den Daten aus den Editfeldern. Das Problem beim Arbeiten mit nur einem Button für Ändern/Hinzufügen besteht darin, daß du ja eigentlich nur über ein markiertes Item erkennst, ob geändert oder hinzugefügt werden soll. Aber wer sagt denn, daß ein User nicht ein Element markiert hat, aber trotzdem ein neues hinzufügen will? :zwinker: Sollte ich dein Programm falsch verstanden haben, korrigiere mich, aber so wie ich es gesehen habe, soll das ganze so eine Art Adressverwaltung sein, oder? Daher braucht der User eben beide Funktionalitäten. Wenn du eine einfachere Lösung findest, die auch narrensicher ist, verrate es mir, das könnte ich auch immer gut gebrauchen :mrgreen: |
Re: In einer ListBox einen Eintrag suchen bzw. Eintrag änder
Aber der Hinzufügen-Button existiert und funktioniert allein sowie im Programm. Der Änderungsbutton, räumt doch auch gleich, wenn die Zeile zurück aus den Editfeldern in die Listbox geht die Editfelder, so dass der Benutzer dann sofort wieder neue Daten eingeben kann, also hinzufügt. Der einzige Nachteil ist, das blöde onklick der Listbox, weil so keine separate Zeile mehr gelöscht werden kann, da bei jedem klick, die Zeile in die Editfelder nach oben wandert, ohne die Möglichkeit einer sinnlichen Betrachtung.
Und dich zu toppen ist schier unmöglich!!!!! Glaube solch geniales Meisterstück gelingt mir nicht.... |
Re: In einer ListBox einen Eintrag suchen bzw. Eintrag änder
Zitat:
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:38 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