Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.23;
Скачать: CL | DM;

Вниз

Как можно подсчитать длину строки в пикселях   Найти похожие ветки 

 
dimich1978 ©   (2003-01-14 17:07) [0]

Например подсчет длины
S:="Дата"+datetostr(date);
или
у checkbox как можно узнать.
Делаю на checklistbox.canvas.textwidth
все ок, а вот с отдельной строкой нифига. Как это можно побороть.
Заранее всем благодарен


 
MBo ©   (2003-01-14 17:14) [1]

>все ок, а вот с отдельной строкой нифига
?????


 
Skier ©   (2003-01-14 17:16) [2]

>dimich1978
Не понятно...


 
eheyler   (2003-01-14 17:35) [3]

Отдельная строка не имеет длины в пикселах.
Её (длину в пикселах) имеет изображение этой строки на
каком либо устройстве (Canvas"e).


 
Avsam ©   (2003-01-14 17:46) [4]

Я понял о чем вопрос: как подсчитать длину строки в пикселях, имея определенные шрифтовые настройки?
то есть, определить заранее, влезет ли текст в TEdit и сколько не влезет.

так как?


 
eheyler   (2003-01-14 18:02) [5]

Что-нибудь в таком духе:

var DC: HDC;
hf: THandle;
Size: TSize;
s: string;
MyTextWidth: Integer;
begin
s := "Edit1";

DC := GetDC(Edit1.Handle);
hf := SelectObject(DC, Edit1.Font.Handle);
Windows.GetTextExtentPoint32(DC, PChar(s), Length(s), Size);

MyTextWidth := Size.cx; // Результат

SelectObject(DC, hf);
ReleaseDC(Edit1.Handle, DC);
end;

Или создать временный канвас


 
anatolyk   (2003-01-15 11:25) [6]

Всем привет!
А как это будет выглядеть в случае, если надо, напр. автоматически выровнять ширину колонки в DBGRID-е по наиболее широкому полю? Подскажите, пожалуйста.



Страницы: 1 вся ветка

Текущий архив: 2003.01.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.032 c
1-72303
badaxe
2003-01-15 15:37
2003.01.23
Проблема с random


14-72525
VJar
2003-01-05 11:30
2003.01.23
Параметр отладчика


1-72289
shok
2003-01-15 09:34
2003.01.23
password


3-72161
Jackal
2003-01-04 12:41
2003.01.23
Кодировка


1-72174
Бук
2003-01-13 08:28
2003.01.23
Версии ОС Windows