IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

 
 Ответить  Открыть новую тему 
> TLabel, что поместилось?..
сообщение
Сообщение #1


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


Здравствуйте.
Есть в Delphi стандартный компонент - TLabel. Если текст из свойства Caption не помещается на нем, кусок как бы обрезается (не отображается).
Можно ли из программы как-либо определить, что влезло, а что нет?


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Цитата
Можно ли из программы как-либо определить, что влезло, а что нет?
Можно. Посимвольно пробегать по Label.Caption, и считать накапливающуюся длину текста:
Len := 0; s := 0;
for i := 1 to Length(Label1.Caption) do begin
LetterWidth := Label1.Canvas.TextWidth(Label1.Caption[i]);
if Len + LetterWidth < Label1.Width then begin
s := s + Label1.Caption[i]; inc(Len, LetterWidth);
end
else break;
end;
в результате в S будет то, что полностью видно в метке. Это все при условии, что Label1.AutoSize равно False, иначе это делается чуть-чуть по другому (надо будет химичить с Label1.Left + Len < Form1.Width, или что-то в этом роде, смотря, где Label, и какое выравнивание задано)
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


Спасибо!
Не знала, как ширину символа получить...


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.10.2020 13:03
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name