Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> PictureBox, MouseHover - MouseLeave 
:(
    Опции темы
tit0
Дата 30.11.2009, 18:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 23.10.2009

Репутация: нет
Всего: нет



Здравствуйте. Пишу программы VC++2008 winforms. Есть на форме PictureBox. Как сделать так чтобы рисунок на форме менялся
при наведениии на него мышью(Hover) и обратно(Leave).

Я делал примерно так...hover :
Код

                // 
                // PictureBox
                //            
                this->PictureBox->ImageLocation = "D:\\путь\\Рисунок_1.png";
                this->PictureBox->Load();
                this->PictureBox->Location = System::Drawing::Point(763, 12);
                this->PictureBox->Name = L"PictureBox";
                this->PictureBox->Size = System::Drawing::Size(20, 20);
                this->PictureBox->TabIndex = 8;
                this->PictureBox->TabStop = false;
                this->PictureBox->MouseHover += gcnew System::EventHandler(this, &hMainForm::imgBoxHover);

                // Event
                imgBoxHover(System::Object^  sender, System::EventArgs^  e){
                    this->PictureBox->ImageLocation = "D:\\путь\\Рисунок_2.png";
                    this->PictureBox->Load();
                }


Этот способ даже в моих неопытных глазах кажется варварским)) Во первых, есть задержка
примерно секунду, перед тем как рисунок изменится. Во вторых, он должен лежать только 
там где вы его указали ImageLocation = "D:\\путь\\Рисунок_1.png". Есть ли другие способы?
PM MAIL   Вверх
Cheloveck
Дата 30.11.2009, 23:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1578
Регистрация: 26.7.2008
Где: Тула

Репутация: нет
Всего: 32



Цитата(tit0 @  30.11.2009,  19:13 Найти цитируемый пост)
Пишу программы VC++2008 winforms. 

Так и тему создавай в соответствующем разделе. 

В любом случае тебе надо ховер обрабатывать. Но менять только на первое сообщение, потом игнорить, пока не уйдёт курсор. Файл засунь в ресурсы и загрузи во время запуска программы, тогда на отрисовку уйдёт какая-то доля секунды.


--------------------
user posted image
PM Jabber   Вверх
bsa
Дата 30.11.2009, 23:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: нет
Всего: 196




M
bsa
tit0, WinForms это .Net

PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0614 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.