Прослушивание наведения мыши, даже если форма скрыта или видна = false
Hi, I´m trying to implement AutoHide function to my C# winForm appBar for more then a week and I still dont have a solution. Now I have an idea how to do it diffrent then via SHAppBarMessage (cause I don´t know how to use it for autohide), but I´m looking for a way how to get if mouse is hover the form even if form is visible = false or hide(). Do anyone please know some example? Thank you very much, Blaato.
Что я уже пробовал:
Я ничего не пытаюсь сделать, потому что понятия не имею.
Ralf Meier
Я немного запутался ...
Если форма не видна ... как могла мышь оказаться над ним ? Вы должны дать гораздо больше информации ...
Blaato
Даже если форма не видна, она все равно имеет место и размер. Он все еще существует, просто его не видно. Так что теперь я думаю о мышеловке, но я никогда не работал с ней, так что это будет одна попытка за другой. Но если вы знаете лучший способ, я буду вам очень благодарен.
Ralf Meier
Почему я в замешательстве :
Обычно у вас есть несколько форм в одном проекте (3,4,5,6,7 ... и т. д.)
Часто все формы serverall расположены на одной и той же позиции (с одинаковым размером).
Так... как вы хотите решить, над какой из этих невидимых форм находится мышь в данный момент ?
И... для какого поведения вам нужна эта информация ?
Blaato
Как я уже писал, это панель приложений, так что теперь мы работаем только с одной формой, никакой другой не нужно. Мышиный крючок-это решение, как я уже сказал.
А теперь-зачем мне эта информация?. Как я уже сказал, я пытаюсь сделать свой appBar autohide, но я не знаю, как это сделать через SHAppBarMessage, поэтому я решил, что могу просто отменить регистрацию appBar и позволить ему находиться в том же положении экрана и сделать его скрытым. И когда мышь наводит форму, например, на 0 - > 2 верхних пикселя формы, она снова может быть видна. Так что это временное решение для функции автоматического скрытия на панели приложения AppBar.
Ralf Meier
Поэтому вы должны написать то, что вы имеете в виду ...
Ваша панель приложений (я ее не знаю) должна быть элементом управления, который вы установили в невидимый.
Теперь (если ваш элемент управления не виден) вы хотите показать его (сделать видимым) , если положение мыши находится в его местоположении - я прав до сих пор ?
Blaato
Да, вы правы. И есть ссылка, Что такое appBar: https://msdn.microsoft.com/en-us/library/windows/desktop/cc144177(v=против 85). aspx
Это то же самое, что и панель задач Windows.
Ralf Meier
смотрите мое решение ...