Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi TPageCotnrol -> selber zeichnen -> Schrift bei Tabs hochkant (https://www.delphipraxis.net/110471-tpagecotnrol-selber-zeichnen-schrift-bei-tabs-hochkant.html)

HolgerCW 18. Mär 2008 15:49


TPageCotnrol -> selber zeichnen -> Schrift bei Tabs ho
 
Hallo zusammen,

wie kann ich den Text bei den Tabs hochkannt darstellen, wenn ich das PageControl selber zeichne.

Mach das so:

Delphi-Quellcode:
canvas.TextOut(rect.left,rect.top,Pages[Der_Tabindex].Caption);
Nur zeichnet er mir den Text nun von links nach rechts und nicht von oben nach unten. Wie bekomme ich as hin ?

Gruss

Holger

PeterPain 18. Mär 2008 15:51

Re: TPageCotnrol -> selber zeichnen -> Schrift bei Tab
 
Soweit ich weis garnicht.
Du könntest dir natürlich selber was schreiben, wie :

Delphi-Quellcode:
  Y := 0;
  X := WhatEver;
  for i := 1 to Length(Text) do
  begin
   MyCanvas.TextOut(X, Y, Text[I]);
   Inc(Y, MyCanvas.TextHeight(Text[i]) + 1);
  end;

gruss

Die Muhkuh 18. Mär 2008 15:52

Re: TPageCotnrol -> selber zeichnen -> Schrift bei Tab
 
Hi,

hier ist ein Beispiel, wie man einen Text drehen kann.

[edit]Komische Interpunktion entfernt :tongue: [/edit]

HolgerCW 18. Mär 2008 18:26

Re: TPageCotnrol -> selber zeichnen -> Schrift bei Tab
 
Vielen dank erstmal, werde es morgen ausprobieren ...und geben dann mein Feedback ...

Gruss

Holger

HolgerCW 19. Mär 2008 09:17

Re: TPageCotnrol -> selber zeichnen -> Schrift bei Tab
 
Hallo nochmal,

also bei dem ersten Beispiel kommt ein Fehler bei:

Delphi-Quellcode:
Inc(Y, MyCanvas.TextHeight(Text[i]) + 1);
Fehlermeldung: Der linken Seite kann ncihts zugewiesen werden !!!

Das verlinkte Beispiel beeinflusst irgendwie auch die Schriftgrösse und Fett-Schrift. Komme damit nciht klar.

Für weitere Anrgungen wäre ich sehr dankbar.

Gruss

Holger

DeddyH 19. Mär 2008 09:28

Re: TPageCotnrol -> selber zeichnen -> Schrift bei Tab
 
Ist Y denn als Variable definiert?

HolgerCW 19. Mär 2008 09:33

Re: TPageCotnrol -> selber zeichnen -> Schrift bei Tab
 
Habe es so gemacht:

Delphi-Quellcode:
for I := 1 to Length(Pages[Der_Tabindex].Caption) do
begin
 Canvas.TextOut(rect.left+1, 0, Pages[Der_Tabindex].Caption[I]);
 Inc(0, Canvas.TextHeight(Pages[Der_Tabindex].Caption[I]) + 1);
end;

DeddyH 19. Mär 2008 10:07

Re: TPageCotnrol -> selber zeichnen -> Schrift bei Tab
 
0 ist eine Konstante.

HolgerCW 19. Mär 2008 10:27

Re: TPageCotnrol -> selber zeichnen -> Schrift bei Tab
 
Alles klar.

Das haut nun schon mal hin. Nur schreibt er die Buchstaben jetzt so:

T
e
s
t

Dann ist der Text für das Tab zu lang. Die Buchstaben müssen jetzt nochmal um 90° gedreht werden. Wie bekomme ich das hin ?

Gruss

Holger

DeddyH 19. Mär 2008 10:44

Re: TPageCotnrol -> selber zeichnen -> Schrift bei Tab
 
Bei mir funktioniert das Beispiel. Hast Du denn auch einen Truetype-Font verwendet?


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:56 Uhr.
Seite 1 von 2  1 2      

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 by Thomas Breitkreuz