Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Как в UserControl-е узнать его left и top Добавлено: 06.04.07 20:50  

Автор вопроса:  FIX | ICQ: 348680795 
При создании ActiveX столкнулся с проблемой проверки мышки на контроле, у него нет свойств Top и Left. Подскажите, что делать? (Vb6)

Ответить

  Ответы Всего ответов: 8  

Номер ответа: 1
Автор ответа:
 Серёга



ICQ: 262809473 

Вопросов: 17
Ответов: 561
 Web-сайт: houselab.narod.ru
 Профиль | | #1
Добавлено: 06.04.07 21:39
у него нет свойств Top и Left

- А почему?

Ответить

Номер ответа: 2
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #2 Добавлено: 06.04.07 22:22
А почему?

потому что БГ мудак :))

лефт\топ через апи получить можно, хендел то знаем...

Ответить

Номер ответа: 3
Автор ответа:
 Серёга



ICQ: 262809473 

Вопросов: 17
Ответов: 561
 Web-сайт: houselab.narod.ru
 Профиль | | #3
Добавлено: 06.04.07 22:40
Нет, ну видимо JaG не совсем корректно выразился.
Ему видимо нужны абсолютные координаты, но для "проверки мышки на контроле" ИМХО лучше использовать Timer и WindowFromPoint. И сравнивать полученное значение с hWnd контрола. Это наверно будет попроще :)

Ответить

Номер ответа: 4
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #4 Добавлено: 07.04.07 03:36
Да коректно он выразился, это уже нюансы реализации. Например если на юзер-контроле есть ещё какой-то контрол, который имеет hWnd, то WindowFromPoint возвратит hWnd самого верхнего, т.е. под которым мышь. В итоге получится что отслеживаем mouse_out у этого контрола, который содержится в основном юзер-контроле. А задача отследить mouse_out именно UserControl'a, а не объекта в нём. Поэтому WindowFromPoint не всегда уместна, имхо в данном случае уместнее GetWindowRect

Ответить

Номер ответа: 5
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #5 Добавлено: 07.04.07 15:07
потому что БГ мудак :))

Скорее потому что ты не знаешь, как правильно.

usercontrol.extender.left
usercontrol.extender.top

Двоечник.

Ответить

Номер ответа: 6
Автор ответа:
 FIX



ICQ: 348680795 

Вопросов: 39
Ответов: 62
 Профиль | | #6 Добавлено: 07.04.07 21:12
2 GSerg работает! :)
Всем спасибо за ответы

Ответить

Номер ответа: 7
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #7 Добавлено: 08.04.07 19:35
вот ёпты. Ок, уговорил, я двоечник. Но БГ всёравно мудак, ну нафига запихивать Left/Top в extender ? :)

Ответить

Номер ответа: 8
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #8 Добавлено: 08.04.07 19:41
ну нафига

Примени моск.

Потому контрол и сам знает, какова его ширина, но чтобы спросить, где его место в рамках контейнера, он может только у этого контейнера.

В противном случае можно было бы заявить, что left и top существуют даже тогда, когда контейнера нет. Предлагается тебе назвать, чему они равны в этом случае.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам