Здравствуйте, уважаемые! Есть два вопроса: 1) Иногда приходится делать кнопки на основе PictureBox. Как сделать так, чтобы при щелчке на нем мышью он утоплялся и поднимался, как обычная кнопка? 2) Как реализовать подсветку под кнопкой при наведении на нее мыши, подобно WinAmp или Windows Media Player? Спасибо за ответы.
Приветствую Вас, Veliki_Knyaze! Необходимо использовать три картинки (кнопка не нажата, на кнопку навели мышь, на кнопку нажали) и их менять в соответствии с событиями. Ответ отправлен: 13.08.2004, 23:38 Отправитель: Горячев Игорь Отвечает Licvidator
Приветствую Вас, Veliki_Knyaze! 1. Используйте обработчики MouseDown и MouseUp, меняя свойство Picture1.Picture= Но если Вы с АПИ в ладах, я рекомендую способ, описанный в http://www.vbnet.ru/faq/showtopic.asp?id=254. 2. Тоже самое, см пункт первый, но уже для кнопки:) Не забудьте при этом сделать ее Style как Graphical Ответ отправлен: 13.08.2004, 14:29 Отправитель: Licvidator Отвечает Dorian
Приветствую Вас, Veliki_Knyaze! 1) Есть два варианта решения этой проблемы, но в обоих случаях используется события Mouse_down и Mouse_Up: а)Кидаеш на форму PictureBox, ставишь его свойсто Bolderstyle="0," заливаешь в него рисунок своей кнопки. В событие Mouse_Down вставляешь строку Picture1.Bolderstyle="1" В событие Mouse_Up Picture1.Bolderstyle="0" И все б)Готовишь изображения своей кнопки в двух состояниях: в нормальном состоянии и в нажатом. В событие Mouse_Down вбиваешь строку Picture1.Picture = LoadPicture("ButtonDown.bmp") В данном случае bmp должен находится в родной директории VB, либо полностью прописывай путь к ней (c:PictureButtonDown.bmp) В событие Mouse_Up Picture1.Picture = LoadPicture("ButtonNormal.bmp")
2) Готовишь изображение своей кнопки в подсвеченном виде,
как тебе нужно и в событие Mouse_Move пишешь Picture1.Picture = LoadPicture(&q
uot;ButtonLight.bmp") Это событие будет выполнятся когда мышь будет перемещатся по PictureBox, но когда ты передвинешь мышь на форму кнопка должа принемать свое нормальное состояние, для этого для Form1 в событие Mouse_Move пишешь Picture1.Picture = LoadPicture("ButtonNormal.bmp") Прим. Путь к файлу обязательно должен стоять в кавычках
Если ты все правильно сделаешь, все заработает! Спасибо за внимание! Ждем еще вопросов.
Ответ отправлен: 13.08.2004, 09:17 Отправитель: Dorian
Форма отправки вопроса
Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+
или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.