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

Вниз

Panel   Найти похожие ветки 

 
Lexann   (2002-03-04 21:43) [0]

Как сделать чтобы появляющаяся в Panel строчка при большем объеме чем Panel стала меньшей ?


 
lipskiy ©   (2002-03-05 00:18) [1]

Может быть можно и проще, но я делаю примерно так.
Допустим на панели лежит лейбл.
На ресайз панели вешаем обработчик:

procedure TForm1.Panel1CanResize(Sender: TObject; var NewWidth, NewHeight: Integer; var Resize: Boolean);
var fw:integer;
label ex, up;
begin

Label1.Canvas.Font:= Label.Font;
fw:= Label1.Canvas.TextWidth(Label1.Caption);
if NewWidth > fw then goto up;

// уменьшаем шрифт, пока не влезет
repeat
Label1.Canvas.Font.Size:= Label1.Canvas.Font.Size-1;
fw:= Label1.Canvas.TextWidth(Label1.Caption);
until NewWidth > fw;
Label1.Font.Size:= Label1.Canvas.Font.Size;
goto ex;

// увеличиваем шрифт, пока не вылезет
up:
repeat
Label1.Canvas.Font.Size:= Label1.Canvas.Font.Size+1;
fw:= Label1.Canvas.TextWidth(Label1.Caption);
until NewWidth < fw;
Label1.Font.Size:= Label1.Canvas.Font.Size-1;

ex:
end;



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

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

Наверх




Память: 0.46 MB
Время: 0.01 c
7-57536
Дима
2001-12-17 18:31
2002.03.18
Звук из системного динамика


3-57320
xtremer
2002-02-19 14:51
2002.03.18
О BDE и больших базах данных


14-57492
M-A-B
2002-02-01 12:14
2002.03.18
СОМ-порт


1-57387
Nikola
2002-02-28 08:50
2002.03.18
Определить номер входящего звонка


1-57380
РЛ
2002-03-01 09:45
2002.03.18
Запускаю в режиме отладки, и появляется CPU c какими-то контрольными точками, которые я не проставлял