XbpPushButton Caption mehrzeilig [Erledigt]

Grafische Primitive, XbaseParts und Darstellungsfragen allgemein.

Moderator: Moderatoren

Antworten
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

XbpPushButton Caption mehrzeilig [Erledigt]

Beitrag von Jan »

Kann man mit Standardmitteln eine mehrzeilige Caption auf einem XbpPushButton setzen? Die Hilfe läsßt sich dazu leider nicht aus ...

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
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: XbpPushButton Caption mehrzeilig

Beitrag von Manfred »

denke schon. express++ kann es und das sind Standardmittel.
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
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: XbpPushButton Caption mehrzeilig

Beitrag von AUGE_OHR »

Manfred hat geschrieben:denke schon. express++ kann es und das sind Standardmittel.
hm ... meinst du die XP_Buttons ?
die sind Ownerdraw und ohne wird es, ohne API Tricks, nicht gehen weil das Attribut BS_MULTILINE fehlt.

nun ist der API Trick Teil von meinem Vortrag den ich vorbereite ... soll ich es hier schon verraten :?:
gruss by OHR
Jimmy
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: XbpPushButton Caption mehrzeilig

Beitrag von Manfred »

hm, der "normale" DCPUSHBUTTON hat das BS_MULTILINE. Die DCPUSHBUTTONXP nutze ich nicht.
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
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: XbpPushButton Caption mehrzeilig

Beitrag von AUGE_OHR »

Manfred hat geschrieben:hm, der "normale" DCPUSHBUTTON hat das BS_MULTILINE. Die DCPUSHBUTTONXP nutze ich nicht.
OK ... habe es gesehen. Roger verwendet den selben API "Trick" (die letzte Zeilen in METHOD DC_XbpPushButton:create() )
gruss by OHR
Jimmy
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: XbpPushButton Caption mehrzeilig

Beitrag von Rudolf »

Hallo,
mit DCPUSHBUTTONXP CAPTIONARRAY aCaption kann man mehrzeilige Text und Images darstellen. Für jede Textzeile oder Image ein Arrayelement:

Element Type Description
------- ------ --------------------------------------------------
[1] C/O Caption string or Bitmap object
[2] N Foreground color
[3] N Start Row, in pixels from top
[4] N Start Column, in pixels from top
[5] N End Row, in pixels from top (bitmap only)
[6] N End Column, in pixels from top (bitmap only)
[7] N Alignment. XBALIGN_* from XBP.CH.
[8] C Font compound name or Font object (caption only)

Grüße
Rudolf
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: XbpPushButton Caption mehrzeilig

Beitrag von Jan »

Moin,

hab das hinbekommen. Jimmy hatte mir die Lösung parallel zu seiner Antowrt hier bilateral zukommen lassen. Da er das für seine Session auf dem Forentreffen nutzen möchte, und das selber hier nicht gepostet hat, werde ich das auch nicht machen. Sorry, Leute.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: XbpPushButton Caption mehrzeilig [Erledigt]

Beitrag von brandelh »

da bin ich ja mal gespannt :D

Ist es mit dem Trick möglich eine abgeleitete Klasse zu machen, die automatisch mehrzeilige Texte anbietet ?
Gruß
Hubert
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: XbpPushButton Caption mehrzeilig [Erledigt]

Beitrag von Jan »

Hallo Hubert,

ich denke mal ja. Wobei ich ja bekanntermaßen nicht mit Klassen arbeite (jedenfalls nicht so gerne). Ich hab mir also einfach eine Funktion geschrieben, die ich nach dem oButton:create aufrufe, das Button-Objekt per Referenz übergebe, und den damit auf MultiLine einstelle. Würde ich meine eigene Buttonklasse geschrieben haben, könnte ich das als Methode einbauen. Allerdings muß die Einstellung auf Multiline NACH dem :create() geschehen, was aber sicherlich kein Problem darstellen sollte.

Zum Code: Jimmy hatte ja oben schon angedeutet, das seine Lösung der von Roger in eXpress++ entspricht. Wer auf den Xbase++-Tracks in Oberursel war hat eine unbegrenzte Vollversion von Roger erhalten, da hat man dann also den Code ...

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: XbpPushButton Caption mehrzeilig [Erledigt]

Beitrag von Jan »

Ein Punkt, den ich gerade noch festgestellt habe: Das Umstellen auf MultiLine MUSS geschehen, wenn der Button enabled ist. Ist der disabled, klappt das nicht mehr.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: XbpPushButton Caption mehrzeilig [Erledigt]

Beitrag von brandelh »

Klar, du sendest ja vermutlich eine message ... und ein disabled button reagiert auf nix ;-)

ABER er muss ja nicht sichtbar sein !
Einfach auf -100/-100 erzeugen, ändern, disablen und position versetzen.
Gruß
Hubert
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: XbpPushButton Caption mehrzeilig [Erledigt]

Beitrag von Jan »

Hubert,

das ist viel einfacher. Das :disable() passiert ja ebenfalls nach dem :create(). Also einfach nur auf die Reihenfolge achten.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: XbpPushButton Caption mehrzeilig [Erledigt]

Beitrag von brandelh »

da war ich wohl auf dem Schlauch gestanden ;-)

PS: bei einer abgeleiteten Klasse ruft man in der eigenen create() Methode SUPER:create() auf, und danach kann man dann deine magische Funktion starten ...

In der Anwendung selbst verwendet man dann den abgeleiteten XbpPushButtonMoreLines() ;-)
Gruß
Hubert
Benutzeravatar
Bruno
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 103
Registriert: So, 16. Apr 2023 23:11
Wohnort: Lauterbach
Hat sich bedankt: 30 Mal
Danksagung erhalten: 4 Mal

Re: XbpPushButton Caption mehrzeilig [Erledigt]

Beitrag von Bruno »

Hallo Mitglieder,
wird die Lösung auch Xbase++ Programmierer mitgeteilt, welche damals nicht bei diesem Vortrag waren?
Gruss Bruno
Xbase++ 1.9.355 ohne eExpress
Antworten