Tabreiterbreite berechnen

Grafische Primitive, XbaseParts und Darstellungsfragen allgemein.

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

Tabreiterbreite berechnen

Beitrag von Manfred »

Hi,
ich denke mal das dürfte eine allgemeine Frage sein, auch wenn ich das mit express++ löse. Ich möchte gerne, das in Abhängigkeit von der Schriftart und Schriftgröße und der Textlänge der Tabreiter entsprechend seine Größe enthält beim Erstellen. Dazu habe ich auch über GraQueryTextBox() eine Berechnung gemacht. Leider genügt das Ergebnis aber nicht als Breite, um den kompletten Text anzuzeigen. Wie löst man so ein Problem?
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: Tabreiterbreite berechnen

Beitrag von AUGE_OHR »

hi,

hast du den Font vorher schon gesetzt :?:

einfacher Workaround : hänge doch paar Zeichen zur Brechnung ran ...
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: Tabreiterbreite berechnen

Beitrag von Manfred »

bei der express++ funktion wird der Font mitgegeben.
Etwas dazumogeln finde ich aber albern, das ist doch nicht SInn der Sache. Wozu kann man denn alles berechnen? Woher soll ich vorher wissen, was dazu gemogelt werden 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!!
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: Tabreiterbreite berechnen

Beitrag von Jan »

Hallo Manfred,

ich hatte das gleiche Problem bei einem XbpStatic. Textlänge berechnet, und trotzdem kamen die drei ... am Ende des Strings. Ich habe die Länge des Strings exakt um 1 erhöht, dann klappte das.

Es scheint so Xbase++ bei exakt gleicher Abmessung von Caption und Static Platzprobleme bekommt.

Ob das bei den Tabpages genau so klappt kann ich Dir aber nicht sagen. Hab ich nicht getestet.

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: Tabreiterbreite berechnen

Beitrag von Manfred »

das interessante daran ist, wenn ich 10.courier new bold nehme, dann muß ich 2 Buchstaben dazu lügen. Dann paßt es. Das ist aber nicht erforderlich, wenn die DPI Zahl steigt, oder wenn ich eine größere Schriftart nehme ab 12 oder 14 Pixel aufwärts. Dann paßt die Berechnung. Das verstehe wer will....
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: Tabreiterbreite berechnen

Beitrag von AUGE_OHR »

hi,

such mal nach "GraQueryTextBox vs. GetTextExtentPoint32" von Günter Beyes.
er "erstellt" den Font "anders" und ab einer bestimmten Grösse ( 14 ?) wird der Unterschied zu einem Xbase++ Font "sichtbar".

ich hab dazu auch mal ein Demo erstellt wobei es mir um die Länge ging, also hab ich die Höhe nicht geprüft.
in den Demo konnte man aber die Unterschiede sehen ... finde es z.Z. nicht ... muss mal suchen.
gruss by OHR
Jimmy
Antworten