Długość tekstu w pikselach odczytuję metodą canvas.TextWidth(Edit1.Text) - ale przy budowie nowego komponentu Edit (klasy TEditCustom) wpisanie canvas.TextWidth(Text) sygnalizuje błąd. Jak odczytać długość w pikslach {glowa}
Tworząc pochodną TCustomEdit nie masz obiektu Canvas, który może zmierzyć długość tekstu w pikselach. Jeżeli chcesz mieć możliwość mierzenia tekstu tą metodą, to utwórz prywatny obiekt TCanvas, który będzie mierzyć długość tekstu:
private
FCanvas : TCanvas;
function GetTextWidth : Integer;
published
property TextWidth : Integer read GetTextWidth;
function TTwojEdit.GetTextWidth : Integer;
begin
FCanvas.TextWidth(TTwojEdit.Text);
end;
Tworząc obiekt FCanvas musisz odpowiednio ustawić właściwości TFont Canvasu (na takie same jak Edita)--Jest jeszcze jeden błąd ... :)
Apel: Piszcie w tematach o jaki język programowania chodzi np. : [Delphi], [C++], itp.
Prośba o pomoc do Delphi po polsku. Oceniajcie i dodawajcie komentarze
http://codecentral.borland.com/codecentral/ccweb.exe/listing?id=18659
Oficjalny kanał IRC serwisu 4programers:
serwer: warszawa.ircnet.pl sieć: POLNet kanał: #4programmers.net