Языки программирования семейства Pascal / Заметки о Делфи.
|
|||
---|---|---|---|
#18+
В Delphi есть поддержка тем (оформления) Windows. И эта штука, что впрочем логично, не позволяет менять какие-то визуальные свойства тех или иных элементов управления. Например в элементе управления TPageControl: панель с закладками, цвет закладок в теме по-умолчанию в Windows 10 - белый. На белом не всегда хорошо видны поля ввода и т.д. Но цвет, просто задав в design-time какой-то произвольный, не поменяешь, если включена поддержка тем, нарисовано будет всё равно в стиле темы. Сегодня добавлял в полосу статуса окна (Status bar, полоска внизу), вывод еще одной информации, кроме которой там была. Там несколько панелей, на части выводится текст, на других рисуется типа индикаторов красный/зеленый. Панели есть двух типов - либо задаешь текст и он выводится на панели, либо она отрисовывается программно (свойство Style - psText или psOwnerDraw). И вот надо было добавить ещё одну панельку, в которой выводится текст красным цветом в некоторых ситуациях. Отлаживаю и обращаю внимание, что текстовые панели - жирным шрифтом. Почему? Начинаю искать - в свойствах этого нет, в коде этого тоже нет, из других потоков, которые через Synchronize вызывают разные процедуры в этом окне, тоже нет такого. Причем сначала после открытия окна - без жирного, без bold'а, а потом появляется он. И только через какое-то время догадался, что это - тема. Отключил в опциях проекта поддержку тем и жирный перестал появляться. Ну, потом включил назад. Ладно, раз такая тема, в смысле тема оформления :), то значит так, пусть уж будет, чтобы не выбиваться из стиля Windows. ... |
|||
:
Изменено: 05.02.2024, 18:35 - s62
Нравится:
Не нравится:
|
|||
05.02.2024, 18:30 |
|
Языки программирования семейства Pascal / Заметки о Делфи.
|
|||
---|---|---|---|
#18+
Знакомую фамилию увидел. Использовал в коде функцию CompareMem (сравнивает две области памяти), решил глянуть, как она реализована. Ну, как и ряд других функций, взята из проекта Fastcode, вероятно - адаптирована. А среди тех, кто принимал участие в написании, упомянут Александр Шарахов (только он там и упомянут). Александр не раз писал в разделе Delphi на sql.ru.
Цитата [игнорируется] (* ***** BEGIN LICENSE BLOCK ***** * * The function CompareMem is licensed under the CodeGear license terms. * * The initial developer of the original code is Fastcode * * Portions created by the initial developer are Copyright (C) 2002-2004 * the initial developer. All Rights Reserved. * * Contributor(s): Aleksandr Sharahov * * ***** END LICENSE BLOCK ***** *) ... |
|||
:
Изменено: 09.02.2024, 10:19 - s62
Нравится:
Не нравится:
|
|||
09.02.2024, 10:19 |
|
Языки программирования семейства Pascal / Заметки о Делфи.
|
|||
---|---|---|---|
#18+
В индексе TIOBE в феврале на 12 месте: https://www.tiobe.com/tiobe-index/ ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2024, 08:49 |
|
Start [/forum/search.php?do_search=1&replies_to=717125&author_mode=wrote_post]: |
0ms |
get settings: |
1ms |
get forum list: |
4ms |
searching: |
8ms |
get settings: |
1ms |
get forum list: |
4ms |
get found posts: |
12ms |
track hit: |
31ms |
get online users: |
55ms |
check new: |
1ms |
others: | 316ms |
total: | 433ms |
0 / 0 |