Прозрачный флажок с поддержкой тем? - PullRequest
3 голосов
/ 26 апреля 2010

Я ищу простой прозрачный компонент-флажок, который должным образом поддерживает темы XP / Vista / 7.

Он также должен работать с Delphi 7.

Я нашел компонент на Torry, который не работает должным образом, и я знаю, что у компонентов Raize есть прозрачный флажок - но я, очевидно, не собираюсь платить 300 долларов за весь пакет, только чтобы получить этот единственный компонент.

Я также нашел много других решений, но ни одно из них не поддерживает их тематику.

Основная проблема заключается в том, что TCustomCheckBox является потомком TWinControl, и для реализации прозрачности вам необходимо создать новый элемент управления TGraphic с нуля.

Есть идеи?

Ответы [ 5 ]

0 голосов
/ 28 апреля 2010

Не уверен, поможет ли это, но я столкнулся с той же проблемой при работе с элементами управления TMSSmooth: метка места для флажка в форме выглядела ужасно, потому что она не была прозрачной.

Их демонстрационные / примерные программы имели красивые флажки, поэтому я взглянул на их пример кода.

Оказывается, они уменьшили ширину компонента флажка до 13, так что только сам ящик и заголовок не отображается. Затем они добавили TLabel для подписи.

Выглядело как умный обходной путь для меня.

Надеюсь, это поможет.

0 голосов
/ 28 апреля 2010

LMD-Tools SE бесплатен, отлично работает на Delphi 7 и имеет компонент-флажок, который имеет свойство прозрачности. Я недавно использовал TLMDCheckbox со свойством прозрачности, включенным в Delphi 7.

http://www.lmdinnovative.com/download/index.php#LMD

Скачать файл: setupse10d7.zip. Извините, я не могу опубликовать весь путь (URL), так как мне еще не хватает сока.

Это должно исправить тебя:).

ShawnH.

0 голосов
/ 27 апреля 2010

Если вы можете принять альтернативный элемент управления, есть JvXPCheckCtrls.pas с его компонентом TJvXPCheckbox в библиотеке JVCL. http://jvcl.delphi -jedi.org Я думаю (если я правильно помню), это прозрачно, когда используются темы.

Это довольно большой пакет, который добавится в vcl с установкой Jvcl. И это не будет стоить вам ни цента.

Но помните, что компонент TJvXPCheckbox является частью их пакета XP-controls, и вы не можете просто вынуть компонент как автономный. Вам понадобится установить Jedi и получить основной код и необходимую обработку тем для его использования. - Публичная лицензия Mozilla («MPL») версии 1.1.

0 голосов
/ 28 апреля 2010

Я использую AlphaControls для некоторых моих программ - все их компоненты имеют скины и имеют достаточно мощные опции обработки графики. Многие компоненты также имеют больше функций, чем соответствующие им стандартные компоненты Delphi - некоторые из них я использую только для этих функций. На сайте www.alphaskins.com доступна бесплатная версия Lite - она ​​может быть именно тем, что вам нужно. Заметьте, это не тема Vista / 7. Мы используем Delphi 2010, и осведомленность о темах vista / 7 встроена в стандартный VCL, хотя, вероятно, это не то решение, на которое вы надеялись.

0 голосов
/ 27 апреля 2010

Raize Components является избыточным только для этого компонента, но гораздо более способным и поддерживает прозрачность в целом загружать больше компонентов. Как только вы его получите, вы по достоинству оцените другие предметы. Я бы сказал, что это решение, которое вы ищете.

...