Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.18;
Скачать: [xml.tar.bz2];




Вниз

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;




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.18;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.027 c
1-57401           sc0ch                 2002-03-01 22:43  2002.03.18  
Как перевести строку (String) в бинарный вид в реестре?


1-57461           DmSN                  2002-02-28 21:13  2002.03.18  
Частота вращения вентилятора процессора


3-57288           tovSuhov              2002-02-18 14:21  2002.03.18  
Как узнать количество записей...


3-57297           draculenok            2002-02-19 07:49  2002.03.18  
Кто-нибудь.....


1-57402           Beeper                2002-02-28 21:50  2002.03.18  
Как определить в проекте, какая из форм будет активной?