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

Вниз

How to make TKOlLabel really autosized ?   Найти похожие ветки 

 
Boguslaw   (2005-01-23 18:24) [0]

TKOLLabel behaviour is different then oridanary VCL Label with AutoSize.If I put some multiline string (with #13#10) I wish to have TKOLabel properly sized to show all text with proper word breaks.Instead I have only first line visible. Please,help me fix this, I must use this autosized label to create replacement for balloon window (when not available IE6). The problem is that this label is not autosized and I can"t fix form size based on this label size. In VCL it"s working good
:-(


 
ECM ©   (2005-01-23 20:52) [1]

Я делал это так (без переделки КОЛ). Можно и встроить, но руки пока не доходят попробовать...:(
Принцип такой - ширину считаем уже установленной и вычисляем высоту многострочного текста и меняем Height у Label

procedure TMainForm.Label2Paint(Sender: PControl; DC: HDC);
var
 OldFnt: HFONT;
 R: TRect;
 H: Integer;
begin
 OldFnt := SelectObject(DC,Sender.Font.Handle);
 SetBkMode(DC,TRANSPARENT);
 R := Sender.ClientRect;
 SetTextColor(DC,Sender.Font.Color);
 H := DrawText(DC,@Sender.Caption[1],Length(Sender.Caption),R,DT_CENTER or DT_WORDBREAK or DT_CALCRECT);
 if H <> (Sender.Height+3) then Sender.Height := H+3; //
 DrawText(DC,@Sender.Caption[1],Length(Sender.Caption),R,DT_CENTER or DT_WORDBREAK);
 SelectObject(DC,OldFnt);
end;

Возможно текст не точен (я повыбрасывал лишнее из своего
кода) - но у меня работает... Во всяком случае Label
с caTop при изменении размеров панели, на которую он помещен
отображается нормально. Если надпись не влазит в одну строку
она "заворачивается" в несколько :)



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

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

Наверх




Память: 0.44 MB
Время: 0.009 c
14-1123759636
Павел
2005-08-11 15:27
2005.09.04
Delphi &amp; КПК


4-1121454024
TDionis
2005-07-15 23:00
2005.09.04
wm_destroy VS "Черви"


4-1121695368
Norny
2005-07-18 18:02
2005.09.04
Изменение enabled кнопки в чужом приложении


5-1095963566
Igor_
2004-09-23 22:19
2005.09.04
Обработчик событий OnKeyPress


14-1123504446
oldman
2005-08-08 16:34
2005.09.04
Могем!!! (Извините, если тема была, но я ее не засек...)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский