![]() |
Tabulator in JvRichedit in Millimetern
Liste der Anhänge anzeigen (Anzahl: 1)
Hi DPl'er,
ich möchte gern die Tabulatoren im JvRichedit im Millimetern angeben. Bisher habe ich das so versucht:
Delphi-Quellcode:
Die Tabulator- Abstände passen aber nicht. Was mache ich falsch?
var
dc: HDC; MMproPixelX, MMproPixely : single; xofs, yofs: Integer; begin dc := GetDC(0); MMproPixelX := 25.4 / GetdeviceCaps(dc, LOGPIXELSX); MMproPixelY := 25.4 / GetdeviceCaps(dc, LOGPIXELSY); JvRe.Lines.Add(''); jvRe.Paragraph.TabCount := 3; jvRe.Paragraph.Tab[0] := Round(1 / MMproPixelX * 10); //10mm jvRe.Paragraph.Tab[1] := Round(1 / MMproPixelX * 50); //50mm jvRe.Paragraph.Tab[2] := Round(1 / MMproPixelX * 100); //100mm JvRe.Lines.Add(^I + IntToStr(jvRe.Paragraph.Tab[0]) + ^I + IntToStr(jvRe.Paragraph.Tab[1]) + ^I + IntToStr(jvRe.Paragraph.Tab[2])); |
Re: Tabulator in JvRichedit in Millimetern
ersetze es doch durch die normale tabulatorfunktion:
Delphi-Quellcode:
sollte immer gehen und wenn der Abstand größer sein soll einfach:
var
dc: HDC; MMproPixelX, MMproPixely : single; xofs, yofs: Integer; begin dc := GetDC(0); MMproPixelX := 25.4 / GetdeviceCaps(dc, LOGPIXELSX); MMproPixelY := 25.4 / GetdeviceCaps(dc, LOGPIXELSY); // JvRe.Lines.Add(''); // jvRe.Paragraph.TabCount := 3; // jvRe.Paragraph.Tab[0] := Round(1 / MMproPixelX * 10); //10mm // jvRe.Paragraph.Tab[1] := Round(1 / MMproPixelX * 50); //50mm // jvRe.Paragraph.Tab[2] := Round(1 / MMproPixelX * 100); //100mm JvRe.Lines.Add(^I + chr(vk_tab) + ^I + chr(vk_tab) + ^I + chr(vk_tab));
Delphi-Quellcode:
dann hast du den eben doppelt und immer gleich :-D
chr(vk_tab)+chr(vk_tab)
|
Re: Tabulator in JvRichedit in Millimetern
Hi Avax2k,
das ist aber nicht das was ich wollte, ich möchte schon angeben können, wo die Tabulatoren sind. Das sollte aber auflösungsunabhängig sein. :freak: mfg |
Re: Tabulator in JvRichedit in Millimetern
Hi,
Ich habe in dem Beispiel für JvRichedit eine Umrechnungszahl gefunden, mit der es jetzt klappt:
Delphi-Quellcode:
was dies für eine Zahl ist, kann ich allerdings nicht sagen. Ist das auch auflösungsunabhänig?
jvRe.Paragraph.Tab[0] := Round(2.83464567*10);
jvRe.Paragraph.Tab[1] := Round(2.83464567*50); jvRe.Paragraph.Tab[2] := Round(2.83464567*100); vieleicht kann das jemand beantworten. mfg BrunoT |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:15 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz