getlist nachträglich ändern

Moderator: Moderatoren

Antworten
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

getlist nachträglich ändern

Beitrag von Manfred »

Ich baue einen DC_Browse zusammen, was dynamisch funktionieren muß. Anfänglich sind die Spaltendaten noch nicht alle vorhanden. Ich möchte trotzdem so viel wie möglich am Anfang erstellen. Es gibt Spalten, die erst während der eigentlichen Laufzeit bekannt werden, sich aber bei jedem Aufruf der Funktion, die den Browser samt Inhalt anzeigen soll, ändern können. Das heißt für mich, es sind mal die Spalten und mal die Spalten, die benötigt werden. Jeweils unterschiedlicher Namen und Mengen.
mit DCREAD GUI wird ja anfänglich alles aufgebaut. Wie kann man aber dieses anfängliche Konstrukt später wieder ändern? Und zwar nach dem Schema, das es mal mehr oder mal weniger Spalten sind. Einfach löschen und neu hinzufügen geht ja nicht, da Roger alles in ein Array schreibt.
Ginge das überhaupt einfach, oder müßte da einiges drumherum programmiert werden? Im Prinzip würde mir auch genügen zu sagen: "Entferne den kompletten Browse und erstelle folgenden neu und schiebe ihn ein" Dann würde ich zu Anfang nur den Parentrahmen erstellen, den verstecken und dann zu gegebener Zeit mit dem neuen Browser füllen und sichtbar machen.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2932
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Re: getlist nachträglich ändern

Beitrag von Wolfgang Ciriack »

Ich würde alle Spalten erzeugen und mit dem HIDE Codeblock bei DCBROWSECOL steuern, welche angezeigt werden bzw. welche nicht.
Viele Grüße
Wolfgang
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: getlist nachträglich ändern

Beitrag von Tom »

Eher mit AddColumn/DelColumn. HIDE ist an dieser Stelle nicht verlässlich.
Herzlich,
Tom
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: getlist nachträglich ändern

Beitrag von Manfred »

OK, aber werden denn die Colums dann auch aus dem getlist Array entfernt, oder ist das hierbei egal? Daran hatte ich nämlich auch schon gedacht. Und da fiel mir dann halt die Technik von Roger ein und ich bekam so meine Zweifel und stellte deshalb hier die Frage.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: getlist nachträglich ändern

Beitrag von Tom »

Die sind da m.E. nicht drin.
Herzlich,
Tom
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2932
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Re: getlist nachträglich ändern

Beitrag von Wolfgang Ciriack »

Eher mit AddColumn/DelColumn. HIDE ist an dieser Stelle nicht verlässlich.
Gut zu wissen, habe HIDE oder AddColumn/DelColumn bisher nicht benötigt/benutzt, nur MoveColumn.
Viele Grüße
Wolfgang
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: getlist nachträglich ändern

Beitrag von Manfred »

lt. Anleitung werden die auch ins getlist Array eingetragen.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: getlist nachträglich ändern

Beitrag von Tom »

Stimmt, die Spalten sind im Getlist-Array, aber ich glaube nicht, dass das große Bedeutung hat, denn man manipuliert Spalten kaum inhaltlich. Ich hantiere aber viel mit Dialogen, die Browses enthalten, die mit AddColumn und DelColumn hinzugefügt oder entfernt werden, und das ohne Probleme. Möglicherweise ist die HIDE-Klausel inzwischen auch repariert; ist ein paar Jahre her, dass ich die für BrowseColumns zuletzt verwendet habe.
Herzlich,
Tom
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: getlist nachträglich ändern

Beitrag von Manfred »

ok, delcolumn wäre ja dann nicht das Problem. Aber wie löst Du das mit Addcolumn? Ds wäre ja dann wieder pur Xbase++ und hätte nicht den Charme des DCBROWSECOL, bei dem man so viele Parameter angeben kann, die Roger dann intern verwandelt.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: getlist nachträglich ändern

Beitrag von Tom »

Deshalb hänge ich mit AddColumn auch nur Spalten an, die ich mit DCBROWSECOL erzeugt und mit DelColumn entfernt habe. Dafür landen die Spaltenobjekte in einem Array:

Code: Alles auswählen

DCBROWSECOL DATA {|| ...} ... OBJECT aBrowseCol[xy]

oBrowse:DelColumn(xy)

...

oBrowse:AddColumn(aBrowseCol[xy])
Dieses Spaltenobjekt kann dann alles, was DC_XbpColumns können.
Herzlich,
Tom
Antworten