Вниз
Скачать: CL | DM;

как узнать "ширину" строки   Найти похожие ветки 

 
nickola   (2004-12-20 11:25) [0]

Здраствуйте, All!
Хочу в MainMenu добавить список последних открывавшихся
файлов в виде: "C:\...\MyVeryLongFileNam...", т.е. только
часть пути, не "шире" определенного значения.
"Ширину" строки вычисляю так:
var
 ...
 Size: TSize;
 TextLen: Integer;
begin
 ...
 Size.cx := 0;
 GetTextExtentPoint32(GetDC(MainMenu.Handle), PChar(Edit1.Text),
   Length(Edit1.Text), Size);
 TextLen := Size.cx;
end;

TextLen всегда = 0. Видимо ошибка здесь: GetDC(MainMenu.Handle), но что конкретно неправильно не пойму


 
TUser ©   (2004-12-20 11:31) [1]

См. Canvas.TextWidth или на апи - GetTextMetrics


 
MBo ©   (2004-12-20 12:27) [2]

>Видимо ошибка здесь: GetDC(MainMenu.Handle),
Да, здесь нужно дескриптор окна, а не меню.

В большинстве случаев можно использовать Canvas.Handle главного окна.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.023 c
1-1103184634
aleshap
2004-12-16 11:10
2005.01.02
Каким образом можно сбросить буфер нажатых клавиш


3-1102320495
AleKo
2004-12-06 11:08
2005.01.02
ClientDataSet


9-1094840251
Colt1978
2004-09-10 22:17
2005.01.02
GLScene + Лестница


1-1103189974
dima
2004-12-16 12:39
2005.01.02
Вызвать стандартный редактор


3-1101988326
Blondin
2004-12-02 14:52
2005.01.02
TinyDB 2.0




   Наверх