|
Злостный нарушитель
10881 / 5820 / 1288
Регистрация: 12.03.2015
Сообщений: 26,871
|
||||||
RAD XE3+ Надчёркивание (overline)27.01.2021, 06:36. Показов 8585. Ответов 46
Метки текст на форме (Все метки)
Потребовалось мне вывести на окно (ну, например, в TLabel, текст с надчёркиваем). Попробовал поиграться с диакритическими подстановками - результат меня не устроил: надчёркивание получается прерывистым и не соответствует по длине тексту, над которым оно расположено (см. рис. 1).
Хотелось бы иметь таки возможность выводить именно частично надчёркнутый текст, как в документах, например (см. рис. 2).
0
|
||||||
| 27.01.2021, 06:36 | |
|
Ответы с готовыми решениями:
46
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
3764 / 2272 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
|
||
| 29.01.2021, 14:40 | ||
|
0
|
||
|
Житель Земли
|
||||||
| 29.01.2021, 15:12 | ||||||
|
в общем, возникла проблема двойного амперсанда в тексте исходной строки. Двойной амперсанд обрабатывается аж в предке TWinControl в SetText (или GetText) - я не вникал, но в Caption приходит уже сформированная строка
При&&вет (вход) > При&вет (выход)Чтобы учесть это, нужно глобально перерабатывать код метода GetLines. Онако же мне думается, что это не нужно (кто пользуется &&?) Чтобы учесть одинарный амперсанд, нужно изменить цикл
0
|
||||||
|
3764 / 2272 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
|
||||||
| 29.01.2021, 15:33 | ||||||
|
Вот если бы переопределить тип:
0
|
||||||
|
Житель Земли
|
||
| 29.01.2021, 16:12 | ||
|
Добавлено через 21 минуту Самое правильное - заморочиться с созданием шрифта Это очень интересная работа
0
|
||
|
Злостный нарушитель
10881 / 5820 / 1288
Регистрация: 12.03.2015
Сообщений: 26,871
|
|
| 29.01.2021, 23:30 [ТС] | |
|
Амперсанды амперсандами, а ты учёл такие свойства TLabel, как Alignment, AlignWithMargins, AutoSize, Layout?
![]() Может лучше запилить метод вывода текста на канвас с учётом надчёркиваний, а? Шоп отойти от TLabel-концепции и сделать возможным вывод такой вундервафли куда угодно? Например, в TVirtualStringTree.
0
|
|
|
Житель Земли
|
|
| 30.01.2021, 02:05 | |
|
Конечно, не учёл. В 10 строчках кода за пару часов это учесть нереально. Нужно залазить в такие дебри классовых взаимоотношений, в которые я никогда не лазил. А так, для вывода коротких однострочных надписей сойдёт
0
|
|
|
Злостный нарушитель
10881 / 5820 / 1288
Регистрация: 12.03.2015
Сообщений: 26,871
|
|
| 30.01.2021, 02:08 [ТС] | |
|
0
|
|
|
3764 / 2272 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
|
|
| 30.01.2021, 02:22 | |
|
Хотите быстро но не очень красиво, используйте шрифт Segoe UI Symbol. Это единственный шрифт, который рисует непрерывную линию.
0
|
|
|
Злостный нарушитель
10881 / 5820 / 1288
Регистрация: 12.03.2015
Сообщений: 26,871
|
|
| 30.01.2021, 02:24 [ТС] | |
|
0
|
|
|
Злостный нарушитель
10881 / 5820 / 1288
Регистрация: 12.03.2015
Сообщений: 26,871
|
||
| 30.01.2021, 02:26 [ТС] | ||
|
Надо коллективно родить универсальный вариант и потом всегда им пользоваться.
0
|
||
|
Злостный нарушитель
10881 / 5820 / 1288
Регистрация: 12.03.2015
Сообщений: 26,871
|
|
| 30.01.2021, 02:38 [ТС] | |
|
Попробую написать свой вариант. Вдруг чо получится. Бахнул пивка, чот прям задор появился.
![]() Проект на гифке оставлю тут как есть:
0
|
|
|
Житель Земли
|
||
| 30.01.2021, 02:47 | ||
|
Вообще, какова сфера применения подобного чуда? Понятно, что в метку можно при желании и философский трактат засунуть, однако судя по скрину из начального поста - явно не тот случай.
Добавлено через 2 минуты экспресс-решение: сдвинуть массив линий на разницу ширины метки и ширины текста.Добавлено через 1 минуту С высотой та же петрушка
0
|
||
|
Злостный нарушитель
10881 / 5820 / 1288
Регистрация: 12.03.2015
Сообщений: 26,871
|
|
| 30.01.2021, 06:04 [ТС] | |
|
0
|
|
|
Житель Земли
|
||
| 30.01.2021, 10:55 | ||
|
Только заметил, что при изменении AlignWithMargins цвет линий меняется. Любопытный эффект. Надо будет поковырять
Добавлено через 6 минут
0
|
||
|
Злостный нарушитель
10881 / 5820 / 1288
Регистрация: 12.03.2015
Сообщений: 26,871
|
||
| 30.01.2021, 12:37 [ТС] | ||
|
------------------ Короче, чот я увлякся, сил моих больше нет. Устал. Кому интересно, можете поковырять исходник. Он жутко сырой, я его не тестил. Режим WordWrap не учитывается алгоритмом, я забыл его заблокировать. Щас спать, если вечером интерес не пропадёт, попробую допилить до установки в поллитру компонентов.
0
|
||
|
3764 / 2272 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
|
|
| 30.01.2021, 13:21 | |
|
И все-же я считаю, что эффект надчеркивания должен быть реализован изменением свойств шрифта, там-же где и подчеркивание, жирность, но для этого придется пересобрать массу исходников и теряется гибкость произвольной его установки в любом месте текста и вот как это противоречие обойти пока не соображу.
0
|
|
|
Злостный нарушитель
10881 / 5820 / 1288
Регистрация: 12.03.2015
Сообщений: 26,871
|
|
| 30.01.2021, 13:27 [ТС] | |
|
0
|
|
|
Новые блоги и статьи
|
|||
|
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
|
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2.
Задача:
Обеспечить запись документа в регистр сведений независимо от. . .
|
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется.
Ну как вам?
|
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания
источниках данных и элементов формы(текстовые поля и метки), опирается все
это на технологию событий и мета. . .
|
|
Цена ошибки
DevAlt 23.08.2026
Человек я беспокойный и потому заинтересовался OCaml,
в чате форсили функторы модулей как суперфичу.
Пытаясь отдуплить концепт, наткнулся на тутор с простым примером.
А главный принцип обучения от. . .
|
Сегодня суббота, 22.08.2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины.
zorxor 22.08.2026
Сегодня суббота, 22. 08. 2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины. Кто Я, откуда Я пришел и куда Я иду? Эти вопросы не оставляют меня ни на секунду. Жизнь на планете Земля. . .
|
Жизня: рисунок укладки багажа, сделанный клодом
anaschu 21.08.2026
Сделал 15 снимков, он по снимкам сделал схему.
|
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства.
Жизнь действительно предъявляет каждому. . .
|