Форум: "Основная";
Текущий архив: 2003.01.23;
Скачать: [xml.tar.bz2];
Вниз
Как можно подсчитать длину строки в пикселях Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.008 c