Seite 1 von 1

Tabreiterbreite berechnen

Verfasst: Mi, 08. Jan 2020 7:50
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?

Re: Tabreiterbreite berechnen

Verfasst: Mi, 08. Jan 2020 12:39
von AUGE_OHR
hi,

hast du den Font vorher schon gesetzt :?:

einfacher Workaround : hänge doch paar Zeichen zur Brechnung ran ...

Re: Tabreiterbreite berechnen

Verfasst: Mi, 08. Jan 2020 12:57
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?

Re: Tabreiterbreite berechnen

Verfasst: Mi, 08. Jan 2020 13:04
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

Re: Tabreiterbreite berechnen

Verfasst: Sa, 11. Jan 2020 17:39
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....

Re: Tabreiterbreite berechnen

Verfasst: So, 12. Jan 2020 8:14
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.