Startseite › Foren › Deutsches LiveCode-Forum › Daten in Datagrid anhängen
Schlagwörter: Daten in Datagrid anhängen
- Dieses Thema hat 3 Antworten und 2 Teilnehmer, und wurde zuletzt aktualisiert vor 5 Jahren, 11 Monaten von
Klaus Major.
-
AutorBeiträge
-
-
April 1, 2019 um 21:44 Uhr #13902
Hallo liebe Livecode Gemeinde,
ich möchte ein Telefonbuch programmieren, indem der User selber die Daten eingeben kann.
Leider schreibt mein Script, die daten hinter dem ersten Eintrag, statt darunter.
Hier das Script:on mouseup
put the dgdata of grp „TGrid“ on card „TelefonGrid“ into tArray
put the keys of tArray into tkeys
put the num of lines of tkeys into tAnzahl
put tAnzahl into fld „Anzeige“
if tAnzahl = 0 then
put fld „Fname“ &tab& fld „FVorname“ &tab& fld „FMobil“ &tab& fld „FTelefon“ &tab& fld „FEMail“ & return into tDaten
else
put the dgText of grp „TGrid“ on card „TelefonGrid“ into Tdaten
set the dgData of group „TGrid“ on card „TelefonGrid“ to empty
put fld „Fname“ &tab& fld „FVorname“ &tab& fld „FMobil“ &tab& fld „FTelefon“ &tab& fld „FEMail“ & return after tDaten
end if
set the dgText of grp „TGrid“ on card „TelefonGrid“ to TDaten
put empty into fld „FName“
put empty into fld „FVorname“
put empty into fld „FMobil“
put empty into fld „FTelefon“
put empty into fld „FEMail“
end mouseupWas mache ich falsch ?
Wünsche noch einen schönen Abend
Andreas -
April 2, 2019 um 12:11 Uhr #13910
Hallo Andreas,
Du machst es Dir unnötig schwer! 🙂
Offenbar ist Deine Bedingung niemals 0, sondern eher EMPTY,
daher kommt kein CR (Return) in Deine Daten!Und „Adressen“ immer mit OF angeben:
btn 2 OF cd 3 OF stack „xyz“Mach es so, the DGDATA benötigen wir nicht:
on mouseup ## So etwas nur EINMAL tippen, Variablen kosten nix! put fld "Fname" & tab & fld "FVorname" & tab & fld "FMobil" & tab & fld "FTelefon" & tab & fld "FEMail" into tDaten put the dgtext of grp "TGrid" OF card "TelefonGrid" into tDGDaten ## Nun checken: ## Keine Daten vorhanden if tDGData = EMPTY then put tDaten into tDGDaten else ## Daten vorhanden, also anhängen put CR & tDaten AFTER tDGDaten end if set the dgText of grp "TGrid" OF card "TelefonGrid" to tDGDaten ## JETZT wäre der ideale Zeitpunkt, um die Anzeige zu aktualisieren. ## Deine Lösung hinkte immer einen Datensatz hinterher! :-) put the num of lines of tDGDaten into fld "Anzeige" put empty into fld "FName" put empty into fld "FVorname" put empty into fld "FMobil" put empty into fld "FTelefon" put empty into fld "FEMail" end mouseup
Gruß
Klaus
-
April 2, 2019 um 23:44 Uhr #13927
Danke Klaus, genau so sollte das sein.
Die Abfrage ob 0 Datensätze vorhanden sind, trifft genau einmal zu,
nämlich dann wenn das DataGrid noch leer ist und ich dachte
das ich dann „into“ Daten brauche statt „after“. Sobald dann der erste Satz
im Datagrid war, hätte ich dann die weiteren Datensätze mit after angehängt.
So war zumindest meine Überlegung.
Das ich es mir auch so einfach machen konnte kam mir gar nicht in den Sinn 🙂
Denke halt kompliziert.
Danke nochmal für die schnelle HilfeLieben Gruß
Andreas -
April 3, 2019 um 11:29 Uhr #13929
Falls es Dich tröstet, DataGrids SIND nun mal die komplexesten Dinger in Livecode! 🙂
-
-
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.