AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

DrawText mit CALC_RECT

Ein Thema von Gruber_Hans_12345 · begonnen am 16. Aug 2004 · letzter Beitrag vom 16. Aug 2004
Antwort Antwort
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.426 Beiträge
 
Delphi 2007 Professional
 
#1

DrawText mit CALC_RECT

  Alt 16. Aug 2004, 12:42
Hallo

Weisz wer warum folgender Code nicht so funktioniert wie er sollte ?

temp is ein TRect mit (0, 0, 200, 1000);

danach sollte ja eigentlich der Rückgabewert die Höhe des Textes in Pixel sein oder ?

Leider bekomme ich nur die Höhe ohne (DT_WORDBREAK) also alle manuellen Zeilenumbrüche sind berücksichtugt, und die breite des TRect wurde angepasst.
Abert laut Doku sollte das ja nicht sein, wenn ich DT_CALCRECT verwende.

DrawTextEx(Canvas.Handle, PChar(Kommentar), length(Kommentar), temp, DT_CALCRECT or DT_WORDBREAK, nil); Hoffe mir kann jemand weiterhelfen.

Gruss
Hans
  Mit Zitat antworten Zitat
w3seek
(Gast)

n/a Beiträge
 
#2

Re: DrawText mit CALC_RECT

  Alt 16. Aug 2004, 14:10
deine temp.bottom wurde durch die Funktion veraendert.
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.426 Beiträge
 
Delphi 2007 Professional
 
#3

Re: DrawText mit CALC_RECT

  Alt 16. Aug 2004, 14:21
Laut Doku sollte die Rect struktur geändert werden, und die Höhe zurückgegeben werden.
Aber es wird nur die Höhe berechnet, die die fixen Zeilenumbrüche benötigt zurückgeben, und die Breite des Rect verändert.
(Aber die Breite sollte eigentlich fix bleiben oder ?)

Irgendwie siehts aus als ob DT_WORDBREAK nicht oder nicht mit DT_CALCRECT funktioniert !

Gruss
Hans
  Mit Zitat antworten Zitat
w3seek
(Gast)

n/a Beiträge
 
#4

Re: DrawText mit CALC_RECT

  Alt 16. Aug 2004, 14:25
Ich hab leider nicht die Beschreibung der Funktion im Kopf (und bin gerade zu faul nachzulesen) aber soweit ich mich erinnere berechnet CalcRect (ohne DT_SINGLELINE) nur die Hoehe des Textes. ist DT_SINGLELINE gegeben dann wird die Breite und Hoehe des Textes berechnet. Der Rueckgabewert ist wenn ich mich richtig erinnere, die Hoehe, ja.
  Mit Zitat antworten Zitat
w3seek
(Gast)

n/a Beiträge
 
#5

Re: DrawText mit CALC_RECT

  Alt 16. Aug 2004, 14:27
Zitat von Gruber_Hans_12345:
(Aber die Breite sollte eigentlich fix bleiben oder ?)
Eigentlich ja, solange DT_SINGLELINE nicht gesetzt ist.

Zitat von Gruber_Hans_12345:
Irgendwie siehts aus als ob DT_WORDBREAK nicht oder nicht mit DT_CALCRECT funktioniert !
Ich hab dieses Flag bisher nie gebraucht aber sollte eigentlich funktionieren.
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.426 Beiträge
 
Delphi 2007 Professional
 
#6

Re: DrawText mit CALC_RECT

  Alt 16. Aug 2004, 19:18
Entweder bin ich zu blöd, und übersehe was, oder das funkt unter XP SP1 nicht (habs noch nicht mit anderen Systemen Probiert, aber wenn's unter XP nicht funktioniert ....)

Hans
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz