DCBROWSE mehrzeilig
Moderator: Moderatoren
- Manfred
- Foren-Administrator
- Beiträge: 21186
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
DCBROWSE mehrzeilig
Hi,
ich habe jetzt schon etliches durchgesehen, aber irgendwie blicke ich nicht durch. Wie macht man mehrzeilige Browse in express++?
z.B. 1 Artikel 3 Zeilen dann der nächste Artikel wieder 3 Zeilen. usw.
ich habe jetzt schon etliches durchgesehen, aber irgendwie blicke ich nicht durch. Wie macht man mehrzeilige Browse in express++?
z.B. 1 Artikel 3 Zeilen dann der nächste Artikel wieder 3 Zeilen. usw.
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!!
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!!
- Wolfgang Ciriack
- Der Entwickler von "Deep Thought"
- Beiträge: 2934
- Registriert: Sa, 24. Sep 2005 9:37
- Wohnort: Berlin
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Re: DCBROWSE mehrzeilig
Hallo Manfred,
du must die Zeilenhöhe über die Presentationparameter setzen, z.B.
Dann kannst du die Zeilen setzen über:
Allerdings gibt es ein paar Einschränkungen bzgl. Farbdarstellungen. Wenn du das noch willst, solltest due OWNERDRAWING verwenden.
du must die Zeilenhöhe über die Presentationparameter setzen, z.B.
Code: Alles auswählen
local aPres1:={ {XBP_PP_COMPOUNDNAME, gdl_cSayFont }, ;
{XBP_PP_COL_HA_FGCLR, GRA_CLR_BLACK }, ;
{XBP_PP_COL_HA_BGCLR, GRA_CLR_BACKGROUND}, ;
{XBP_PP_COL_DA_FGCLR, GRA_CLR_BLACK }, ;
{XBP_PP_COL_DA_BGCLR, GRA_CLR_WHITE}, ;
{XBP_PP_HILITE_BGCLR, GRA_CLR_MYDARKBLUE}, ;
{XBP_PP_COL_DA_ROWSEPARATOR, XBPCOL_SEP_DOTTED }, /* Row Sep */ ;
{XBP_PP_COL_DA_COLSEPARATOR, XBPCOL_SEP_DOTTED }, /* Col Sep */ ;
{XBP_PP_COL_DA_ROWHEIGHT, 55 }, /* Row Height */ ;
{XBP_PP_COL_HA_COMPOUNDNAME, gdl_cHeadFont} }
Code: Alles auswählen
DCBROWSECOL DATA { {|| zeile1 }, ;
{|| zeile2 }, ;
{|| Zeile3 } } ......
Viele Grüße
Wolfgang
Wolfgang
- Manfred
- Foren-Administrator
- Beiträge: 21186
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: DCBROWSE mehrzeilig
oh
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!!
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!!
- Wolfgang Ciriack
- Der Entwickler von "Deep Thought"
- Beiträge: 2934
- Registriert: Sa, 24. Sep 2005 9:37
- Wohnort: Berlin
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
- Manfred
- Foren-Administrator
- Beiträge: 21186
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: DCBROWSE mehrzeilig
sorry,
oh für: so geht das?
Das habe ich überhaupt noch nicht gewußt.
oh für: so geht das?
Das habe ich überhaupt noch nicht gewußt.
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!!
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!!
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9357
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 101 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: DCBROWSE mehrzeilig
Das funktioniert allerdings nicht mehr, wenn visuelle Stile aktiv sind (also z.B. eine Manifestdatei vorgefunden wird). Dann ist dieses Browse fehlerhaft. Ich empfehle dringend, für solche Fälle mit Ownerdrawing zu arbeiten. Beispiele für Browses mit Ownerdrawing, die mehrzeilige Daten anzeigen können, hatte ich, glaube ich, auch schon gepostet.
Herzlich,
Tom
Tom
- Manfred
- Foren-Administrator
- Beiträge: 21186
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: DCBROWSE mehrzeilig
Ich hatte hier auch was darüber gelesen, aber irgendwie nicht verstanden, wie das klappen soll.
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!!
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!!
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9357
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 101 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: DCBROWSE mehrzeilig
Hallo, Manfred.
Anbei eines meiner Beispiele von vor zwei Jahren. Mit /PM:PM linken und eine Manifestdatei für die EXE erzeugen. Funktioniert ohne Datenbank, weil ein Array gebraust wird. Zeilen werden mehrzeilig, wenn sie CrLf enthalten (Chr(13)+Chr(10)).
Um das mit eXpress++ zu verwenden, muss die Beispielklasse per Subclassing eingebunden werden:
Die Spalten müssen für Ownerdrawing aktiviert werden:
Die Klasse selbst muss von DC_XbpBrowse abgeleitet werden:
Das ist schon alles. Ein DCBROWSE, das so arbeitet, kann z.B. über den DATA-Codeblock auch Tabelleninhalte mehrzeilig anzeigen:
Anbei eines meiner Beispiele von vor zwei Jahren. Mit /PM:PM linken und eine Manifestdatei für die EXE erzeugen. Funktioniert ohne Datenbank, weil ein Array gebraust wird. Zeilen werden mehrzeilig, wenn sie CrLf enthalten (Chr(13)+Chr(10)).
Um das mit eXpress++ zu verwenden, muss die Beispielklasse per Subclassing eingebunden werden:
Code: Alles auswählen
@ ... DCBROWSE ... SUBCLASS 'XbpBrowseCustom()'
Code: Alles auswählen
DCBROWSECOL ... EVAL {|o|o:DataArea:DrawMode := XBP_DRAW_OWNER}
Code: Alles auswählen
CLASS XbpBrowseCustom FROM DC_XbpBrowse
...
INLINE METHOD init( oParent, oOwner, aPos, aSize, aPP, lVisible,aGetList )
...
::DC_XbpBrowse:init( oParent, oOwner, aPos, aSize, aPP, lVisible,aGetList )
Code: Alles auswählen
DCBROWSECOL DATA {||db->name1+Chr(13)+Chr(10)+db->name2} HEADER "Namen" PARENT oBrowse EVAL {|o|o:DataArea:DrawMode := XBP_DRAW_OWNER}
- Dateianhänge
-
- sample.prg
- (8.09 KiB) 246-mal heruntergeladen
Herzlich,
Tom
Tom
- Manfred
- Foren-Administrator
- Beiträge: 21186
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: DCBROWSE mehrzeilig
Danke Tom,
jetzt wird mir einiges klarer.
jetzt wird mir einiges klarer.
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!!
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!!
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9357
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 101 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: DCBROWSE mehrzeilig
Keine Ursache.
In diesem Beispielcode ist noch einiges an Spielereien. Er zeigt z.B. in der Spalte ein Icon an, wenn das Wort "Berlin" im Text vorkommt. Das brauchst Du in Deiner App vermutlich nicht, aber Du könntest es vielleicht sinnvoll abändern.
In diesem Beispielcode ist noch einiges an Spielereien. Er zeigt z.B. in der Spalte ein Icon an, wenn das Wort "Berlin" im Text vorkommt. Das brauchst Du in Deiner App vermutlich nicht, aber Du könntest es vielleicht sinnvoll abändern.
Herzlich,
Tom
Tom