powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / И снова она ... эта круглая кнопка !!!
12 сообщений из 12, страница 1 из 1
И снова она ... эта круглая кнопка !!!
    #32488723
sergius_2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет!
Нарисовал круглую кнопку (компонент:)) по избитому плагиатному примеру,

(например, вот http://jtsoftik.narod.ru/builder/num52.html)

однако в результате на клик реагирует весь прямоугольник.
Подскажите, можно ли сделать так, чтобы была доступна для
клика только сама кнопка без фона??? (Если "да", то как это сделать в двух словах?)
...
Рейтинг: 0 / 0
И снова она ... эта круглая кнопка !!!
    #32489004
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
математическим способом :))
проверять координаты мышки и если поподают в окружность то ....

а что я как то так и делал :)


i_i
(';')
(V),(V),,
JS
...
Рейтинг: 0 / 0
И снова она ... эта круглая кнопка !!!
    #32489073
director
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На большинстве кнопок такого типа реагирует именно прямоугольник. Проверь сам на сайтах. Главное размерчик правильный подобрать.
А насчет математики - овчинка выделки не стоит
...
Рейтинг: 0 / 0
И снова она ... эта круглая кнопка !!!
    #32489086
sergius_2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да это я понял! Уже нашел пыльную книжку с уравнением эллипса. Как бы мне узнать координаты щелчка? Хотел придумать чего с OnMouseDown, но не знаю, как привинтить его к своему компоненту!
...
Рейтинг: 0 / 0
И снова она ... эта круглая кнопка !!!
    #32489093
director
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть функция - возвращает координаты курсора
...
Рейтинг: 0 / 0
И снова она ... эта круглая кнопка !!!
    #32489117
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если надо будет делать кнопку ввиде снежинки? :)

У меня вот была кнопка(ну не совсем кнопка, полукнопка) у которой каждая вторая точка отсутствовала.

HRGN надо использовать.
и SetWindowRgn
и будет вам счастье.
...
Рейтинг: 0 / 0
И снова она ... эта круглая кнопка !!!
    #32489122
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во точно !

i_i
(';')
(V),(V),,
JS
...
Рейтинг: 0 / 0
И снова она ... эта круглая кнопка !!!
    #32491139
sergius_2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Частично решил вопрос:
Координаты щелчка мыши: GetCursorPos() или Mouse->CursorPos() (Возвращают глобальные координаты).

Далее, преобразовываем их относительно моего компонента: ScreenToClient().

Опосля отсекаем всякую лабуду уравнением эллипса и в результате кнопка нажимается (перерисовывается) только при непосредственном кликанье на неё!

Теперь нужно почти невозможное - OnClick к самой кнопке как привязать? Может ОнКлик убить в компонете и сделать альтернативное событие ?

Кто знает, как убить родительское событие в своем компоненте?
...
Рейтинг: 0 / 0
И снова она ... эта круглая кнопка !!!
    #32491147
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем убивать ???



i_i
(';')
(V),(V),,
JS
...
Рейтинг: 0 / 0
И снова она ... эта круглая кнопка !!!
    #32491604
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А затем, что у него даже если в нужную область клик не попал, а попал в прямоугольник - отработает стандартная функция кнопки - отрисует нажим.
...
Рейтинг: 0 / 0
И снова она ... эта круглая кнопка !!!
    #32499587
Фотография vdimas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MSDN

SetWindowRegion
...
Рейтинг: 0 / 0
И снова она ... эта круглая кнопка !!!
    #32500185
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SetWindowRgn тока, уже написано выше
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / И снова она ... эта круглая кнопка !!!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]