Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.05.2009, 19:44   #1
TilerDerton
Пользователь
 
Регистрация: 12.02.2009
Сообщений: 34
По умолчанию BitBtn форма кнопки/прозрачность

Собственно интересует вопрос:
Есть на форме кнопка BitBtn, возможно ли сделать так, чтобы область кнопки, не закрытая загруженным Glyph(та область, которая не закрашена по левому нижнему пикселю), была прозрачной, т.е. невидимой пользователю. Или как-то можно изменить ее форму?
Забыл, еще вопрос=) Можно ли сделать кнопку невидимой, но активной? Т.е. клик в область где она находится, вызывает функцию onClick, хотя кнопка не видна, если ставлю visible=false, она просто не нажимается=(

Последний раз редактировалось TilerDerton; 29.05.2009 в 21:27.
TilerDerton вне форума Ответить с цитированием
Старый 29.05.2009, 23:52   #2
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию

Цитата:
Можно ли сделать кнопку невидимой, но активной
Используйте TShape. Свойству Brush.Style := bsClear и Pen.Style := psClear
вроде так.
Хотя.. вроде надо Pen.Mode := pmMask вместо Brush.Style := bsClear
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.

Последний раз редактировалось Neeter; 30.05.2009 в 00:00.
Neeter вне форума Ответить с цитированием
Старый 30.05.2009, 00:19   #3
TilerDerton
Пользователь
 
Регистрация: 12.02.2009
Сообщений: 34
По умолчанию

На шейп я что-то не вижу, как поставить картинку.
Сейчас пробую вместо кнопки использовать TImage
Цитата:
Есть на форме кнопка BitBtn, возможно ли сделать так, чтобы область кнопки, не закрытая загруженным Glyph(та область, которая не закрашена по левому нижнему пикселю), была прозрачной, т.е. невидимой пользователю
Получается точно то что надо, с учетом обработки событий MouseDown и MouseUp.
Как я понял на BitBtn это реализовать нереал(бессмысленная трата времени)?
TilerDerton вне форума Ответить с цитированием
Старый 30.05.2009, 00:31   #4
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию

Цитата:
Как я понял на BitBtn это реализовать нереал(бессмысленная трата времени)?
Возможно это сделать. Но это на самом деле очень бессмысленная трата времени(если не считать увеличение опыта )...
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Neeter вне форума Ответить с цитированием
Старый 30.05.2009, 01:07   #5
Lime
Форумчанин
 
Аватар для Lime
 
Регистрация: 10.02.2009
Сообщений: 815
Радость

Цитата:
Сообщение от TilerDerton Посмотреть сообщение
Собственно интересует вопрос:
Есть на форме кнопка BitBtn, возможно ли сделать так, чтобы область кнопки, не закрытая загруженным Glyph(та область, которая не закрашена по левому нижнему пикселю), была прозрачной, т.е. невидимой пользователю. Или как-то можно изменить ее форму?
Забыл, еще вопрос=) Можно ли сделать кнопку невидимой, но активной? Т.е. клик в область где она находится, вызывает функцию onClick, хотя кнопка не видна, если ставлю visible=false, она просто не нажимается=(
А зачем Вам вообще кнопка невидимая? Следите за координатами клика по компоненту "родителю" псевдо кнопки , если координаты в пределах псевдо кнопки - вызывайте нужную Вам функцию, вместо OnClick .
Lime вне форума Ответить с цитированием
Старый 30.05.2009, 01:43   #6
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Я в детстве просто ставил пустую картинку (TImage) и обрабатывал Image1Click...

Получалась невидимая кнопка... ^_^
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Старый 30.05.2009, 10:56   #7
TilerDerton
Пользователь
 
Регистрация: 12.02.2009
Сообщений: 34
По умолчанию

Цитата:
Сообщение от Lime Посмотреть сообщение
А зачем Вам вообще кнопка невидимая? Следите за координатами клика по компоненту "родителю" псевдо кнопки , если координаты в пределах псевдо кнопки - вызывайте нужную Вам функцию, вместо OnClick .
Вот это интересно, обязательно попробую.
Цитата:
Я в детстве просто ставил пустую картинку (TImage) и обрабатывал Image1Click...

Получалась невидимая кнопка... ^_^
Ну, с Timage я уже допер=)
Всем спасибо за ответы.
TilerDerton вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
форма кнопки в Delphi (вопрос) Evgenii Компоненты Delphi 11 08.01.2010 01:33
Проблемма с BitBtn Fe_DoS Общие вопросы C/C++ 1 26.03.2009 21:48
форма кнопки blackstersl Общие вопросы Delphi 1 29.08.2008 13:26
BitBtn и ее Bitmap Yogik™ Помощь студентам 2 19.11.2007 17:12
Кнопка BitBtn Yurek Общие вопросы Delphi 10 05.11.2007 18:42