-
Здравствуйте, Как сделать сабжевое подчёркивание, скажем, у экземпляра TLabel?
-
> Kolan (06.07.2008 15:56:00) [0]
А что fsUnderline не помогает?
-
> А что fsUnderline не помогает?
Ды это же цельная линия, а мне нужны чёрточки (dash). Смысл разный...
-
> Kolan (06.07.2008 17:35:02) [2]
Странное у тебя понятия об подчеркивание
-
Вроде самое обычно, даже стандартное. Может вы имеете в виду, что у обычного TLabel есть возможность подчёркивания чёрточками? Тогда как это сделтаь? Я не знаю.
-
У обычного - нет. Но что мешает создать необычный? ;)
-
> Но что мешает создать необычный? ;)
То, что я хз как это подчёркивание сделать...
-
> Kolan © (06.07.08 19:58) [6] > То, что я хз как это подчёркивание сделать...
DoDrawText override.
-- Regards, LVT.
-
> То, что я хз как это подчёркивание сделать...
Не знаю, кого как, а меня такая манера изложения достает. Или ты ее меняешь или ты не пишешь, одно из двух.
-
-
Удалено модератором
-
> DoDrawText override.
Хм. Немогу понять, кажется подчёркавание не тут делается. > Григорьев Антон © (07.07.08 13:04)
Тоже странно: DT_HIDEPREFIX Windows 2000/XP: Ignores the ampersand (&) prefix character in the text. The letter that follows will not be underlined, but other mnemonic-prefix characters are still processed. For example:
input string: «A&bc&&d»
normal: «Abc&d»
DT_HIDEPREFIX: «Abc&d» Может вы не поняли меня, мне надо подчёркивание чёрточками всей строки, а не символа. Пример: http://www.yandex.ru/. Под строкой поиска написано «Например: <Подчеркнутый текст>» вот такое подчёркивание мне нужно
-
Ну, если посмотреть на TCustomLabel, то вообще-то все понятно, как. Я могу потратить пятнадцать минут и сделать. Но эта ветка не для начинающих, вроде.
-
В предыдущем посте я вижу подчеркивание сплошной линией - никаких черточек. (FireFox 3.0 под Ubuntu)
-
> palva © (07.07.08 22:25) [13]
Теперь понял. Нужно зайти на сайт яндекса. А в чем проблема? Все время меняется длина строки? Тогда сделать Label Resizable и делать длину подчеркивания равную свойству Width у Label.
-
> Ну, если посмотреть на TCustomLabel, то вообще-то все понятно, > как.
Туда и смотрел, и вообще не нашел где там подчеркивание, хоть бы обычное, учитывается. > Но эта ветка не для начинающих, вроде.
Может еще понамикаете :). Я сам хочу сделать. > А в чем проблема?
Проблемма в том, что я не могу найти какой флаг и где использовать, для получения такгого эффекта. Флаги DT_HIDEPREFIX, DT_NOPREFIX и DT_PREFIXONLY не то, они управляют подчёркиванием одного символа это, обычно, означает Hot Key. А мне надо всю строку подчеркнуть чёрточками, что означает немедленное действие.
-
Куча TLabel с одним символом + амперсанд на каждый :)
-
> Kolan © (07.07.08 22:12) [11]
> Хм. Немогу понять, кажется подчёркавание не тут делается.
type
TMyLabel = class(TLabel)
procedure DoDrawText(var ARect: TRect; flags: Longint);override;
end;
procedure TMyLabel.DoDrawText;
begin
inherited;
with Canvas, ARect do
begin
Pen.Style := psDot;
MoveTo(Left, Bottom-1);
LineTo(Right, Bottom-1);
end;
end;
-- Regards, LVT.
-
> Leonid Troyanovsky © (08.07.08 09:56) [17]
Именно! Я намекал увидеть свойство Canvas ;)
-
> Именно!
Млииин, а я вокруг этих флагов кручусь, ничего вокруг не вижу... :(
Благодарю за код.
|