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

Вниз

Текст в ListBox е   Найти похожие ветки 

 
МитяЙ2 ©   (2003-04-12 08:34) [0]

Доброго времени суток Мастера!
Всех с наступлением весны!


Вот возник вопрос:


Как узнать, что текст, находящийся в ListBox
не весь входит по длине, т.е. некоторые строки
не могут быть прочитаны полностью (конец строки
не видно)?

Пробовал:


ListBox1.Canvas.TextWidth(ListBox1.Items[ListBox1.ItemIndex])

и

ListBox1.Canvas.TextExtent(ListBox1.Items[ListBox1.ItemIndex])


выдают одно и тоже, но не подходит, т.к. бывает текст не
входит по длине, а ЗНАЧЕНИЕ выдаваемое TextWidth < ListBox1.Width

Логично, что должно быть: ЗНАЧЕНИЕ выдаваемое TextWidth >= ListBox1.Width
Но это не так!
Как же быть?



P.S. Вертикальный ScrolBar НЕ виден.


Подскажите, МитяЙ.


 
МитяЙ2 ©   (2003-04-12 11:40) [1]

Вот повозился да сам написал:


function IsVisibleAllTextInListBox(lb:TListBox;number_item:integer;Offset:integer;bold_flag:boolean):boolean;
var t:TSize;
cRect:TRect;
bm:TBitmap;
begin
Windows.GetClientRect(lb.Handle, cRect);
bm:=TBitmap.Create;
bm.Width:=cRect.Right;
bm.Height:=cRect.Bottom;
bm.Canvas.Font:=lb.Font;
if bold_flag then bm.Canvas.Font.Style:=bm.Canvas.Font.Style+[fsBold];

if bm.Canvas.TextWidth(lb.Items[number_item-1])+Offset<CRect.Right then IsVisibleAllTextInListBox:=true
else IsVisibleAllTextInListBox:=false;

bm.Free;
end;




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

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

Наверх




Память: 0.47 MB
Время: 0.011 c
6-77053
Neox
2003-03-03 22:36
2003.04.24
скачивание файлов в сети


3-76781
Елена
2003-04-04 15:17
2003.04.24
Есть 2 таблицы.Как сделать так


1-76905
Arch-vile
2003-04-11 23:00
2003.04.24
Процедура sleep


14-77151
Pitay
2003-04-06 21:28
2003.04.24
Эмитация нажатия кнопки


1-77028
Tayfun
2003-04-14 15:08
2003.04.24
Как сделать заставку чтобы в окне демонстрации Экран->Свойства