Форум программистов, компьютерный форум, киберфорум
Наши страницы
The trick
Войти
Регистрация
Восстановить пароль
Рейтинг: 5.00. Голосов: 4.

TrickControls

Запись от The trick размещена 03.09.2014 в 04:54
Обновил(-а) The trick 08.11.2019 в 09:56

Всем привет.
Здесь я буду собирать библиотеку контролов (OCX) вместе с исходными кодами по мере свободного времени. Все контролы поддерживают юникод.
PS. Особо тестировать у меня времени нет, так что буду рад если кто-то будет сообщать о багах мне.

TrickButton

Контрол - кнопка. Поддерживает полупрозрачность а также 32 битные иконки.
В качестве темы используется картинка с 10 состояниям кнопки. Последовательность состояний следующая:
  1. Нормальное отжатое
  2. При наведении отжатое
  3. Нормальное отжатое в фокусе
  4. При наведении отжатое в фокусе
  5. Отжатое неактивное
  6. Нормальное нажатое
  7. При наведении нажатое
  8. Нормальное нажатое в фокусе
  9. При наведении нажатое в фокусе
  10. нажатое неактивное
Состояния расположены по вертикали:
Название: Button_4.png
Просмотров: 2247

Размер: 7.5 Кб
Картинка темы может содержать альфа-канал. Для поддержки разных масштабов я решил сделать масштабируемые зоны и немастабируемые. К примеру возьмем одно состояние:
Нажмите на изображение для увеличения
Название: Tutorial.jpg
Просмотров: 399
Размер:	35.4 Кб
ID:	2669
Области фиолетового цвета остаются немасштабируемыми и располагаются по углам контрола, области красного цвета растягиваются по вертикали и составляют правую и левую сторону, области зеленого - по горизонтали (верхнюю и нижнюю), синяя область растягивается по обеим осям и заполняет контрол изнутри. Размер краевых областей для упрощения я сделал одной величиной, задаваемой свойством Bevel. Например Bevel = 5 задает размеры внешних областей в 5 пикселей.
Кнопка поддерживает иконки, также 24-х или 32-х битные. Также есть возможность для каждого состояния присвоить иконку, для этого в качестве иконки нужно выбрать такую же секвенцию и установить свойство MultiIcon = True.
Положение иконки относительно текста настраивается, можно ставить иконку слева, сверху, справа,снизу. Также имеется возможность настройки положения содержимого по горизонтали и вертикали.
Расстояние между краями контрола и между текстом и иконкой задается свойством Spacing.
Для увеличения производительности прозрачность можно отключить (когда фон однородный), это делается установкой свойства Transparent. Прозрачность работает следующим образом, при перемещении контрола, картинка под ним сохраняется в буфер, тем самым она является фоном, так что если фон меняется, то нужно вызывать SetWindowPos для синхронизации фона.
Свойство Soft задает режим плавной отрисовки.

Контрол поддерживает дополнительные события мыши (прокрутку колеса, уход мыши с контрола, заход на контрол можно например повесть звук)

Нажмите на изображение для увеличения
Название: Безымянный.png
Просмотров: 282
Размер:	106.4 Кб
ID:	2671

04.09.2014
TrickCheckbox

Контрол - чекбокс. Все свойства аналогичны TrickButton. Состояния идут в такой же последовательности, только добалены еще сосотояния для Checked и Grayed, итого 30 состояний.
К примеру:
Нажмите на изображение для увеличения
Название: Check_1.png
Просмотров: 218
Размер:	4.9 Кб
ID:	2676
Имеется возможность задавать положение флажка свойством CheckPos, относительно текста.
Нажмите на изображение для увеличения
Название: Безымянный2.png
Просмотров: 379
Размер:	100.4 Кб
ID:	2677


05.09.2014
TrickRadiobutton

Контрол - радиокнопка. Все свойства аналогичны TrickCheckBox. Состояния идут в последовательности для состояний False и True, итого 20 состояний.
Нажмите на изображение для увеличения
Название: Безымянный5.png
Просмотров: 491
Размер:	103.7 Кб
ID:	2687

04.09.2014 - (ver. 1.0.0.4) добавлен контрол TrickCheckbox, исправлены небольшие баги в TrickButton.
05.09.2014 - (ver. 1.0.0.6) добавлен контрол TrickRadioButton, исправлены небольшие баги в предыдущих контролах.
Вложения
Тип файла: rar TrickControls (1).rar (1,019.2 Кб, 14 просмотров)
Размещено в Без категории
Просмотров 1732 Комментарии 8
Всего комментариев 8
Комментарии
  1. Старый комментарий
    Аватар для Yury Komar
    Небольшое замечание... Все же для увеличения качества контролов, правый клик неплохо было бы отключить, так как в большинстве случаев нажатие и взаимодействие с кнопками обычно используется левый клик мышки, а на правй не реагирует. вот... А так очень даже хорошо...
    но что-то я не могу подлкючить исходники в свой проект для избежания регистрации контроллов и минимизаровать количество файлов готовой программы...
    Запись от Yury Komar размещена 02.10.2014 в 16:36 Yury Komar вне форума
  2. Старый комментарий
    Цитата:
    Сообщение от Yury Komar Просмотреть комментарий
    Небольшое замечание... Все же для увеличения качества контролов, правый клик неплохо было бы отключить, так как в большинстве случаев нажатие и взаимодействие с кнопками обычно используется левый клик мышки, а на правй не реагирует. вот... А так очень даже хорошо...
    но что-то я не могу подлкючить исходники в свой проект для избежания регистрации контроллов и минимизаровать количество файлов готовой программы...
    Хорошее замечание. Исправлю.
    Насчет использования без регистрации, смотри пример с EXE файлом, все они работают без регистрации.
    Запись от The trick размещена 03.10.2014 в 06:35 The trick вне форума
  3. Старый комментарий
    Аватар для Yury Komar
    Попробую разобраться. Спасибо.
    Запись от Yury Komar размещена 03.10.2014 в 11:14 Yury Komar вне форума
  4. Старый комментарий
    Аватар для Веди
    не понял что нужно?
    Запись от Веди размещена 25.11.2016 в 14:25 Веди вне форума
    Обновил(-а) Веди 25.11.2016 в 14:27
  5. Старый комментарий
    The trick, пожалуйста обновите ссылку, загрузка архива с ошибкой.
    Запись от oplrox размещена 06.11.2019 в 11:07 oplrox вне форума
  6. Старый комментарий
    Цитата:
    Сообщение от oplrox Просмотреть комментарий
    The trick, пожалуйста обновите ссылку, загрузка архива с ошибкой.
    Проверил, все работает.
    Запись от The trick размещена 06.11.2019 в 17:28 The trick вне форума
  7. Старый комментарий
    Цитата:
    Сообщение от The trick Просмотреть комментарий
    Проверил, все работает.
    У меня не скачивается, проверил на трех браузерах, на двух рабочих местах с разными провайдерами.
    Вот видео-пруф с одного из них.
    Запись от oplrox размещена 07.11.2019 в 17:29 oplrox вне форума
  8. Старый комментарий
    Цитата:
    Сообщение от oplrox Просмотреть комментарий
    У меня не скачивается, проверил на трех браузерах, на двух рабочих местах с разными провайдерами.
    Вот видео-пруф с одного из них.
    Перезалил
    Запись от The trick размещена 08.11.2019 в 09:57 The trick вне форума
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.