Создайте приложение, похожее на док, используя C # и wpf - PullRequest
3 голосов
/ 24 марта 2012

Мне нужно создать приложение, похожее на то, которое мы получим при покупке ноутбука.Он будет виден только тогда, когда указатель мыши достигнет верхней части окна.Итак, как я могу сделать это с помощью C # 4.0?http://www.notebookcheck.net/uploads/pics/win2_12.jpg по этой ссылке вы можете увидеть приложение.Мне нужно создать такой тип Любая идея, пожалуйста, поделитесь.Спасибо

Ответы [ 2 ]

3 голосов
/ 24 марта 2012

Полагаю, есть несколько различных способов достижения этого эффекта:

  • Вы можете разместить часть окна вашего приложения над видимым экраном, чтобы была видна только его часть (скажем, вы видите только его нижнюю часть). Затем вам нужно обрабатывать события, когда мышь входит (MouseEnter) и покидает (MouseLeave) форму, чтобы перемещать форму вверх и вниз.
  • Вы можете использовать фоновый поток для вызова метода GetCursorPos через заданный интервал (то есть каждые 500 мсек), чтобы проверить, где в данный момент находится мышь. Смотрите эту ссылку для получения дополнительной информации об этом и пример кода: http://www.pinvoke.net/default.aspx/user32.getcursorpos. (Если вам нужно только проверить положение мыши, вы можете использовать таймер, чтобы упростить ваше приложение.)
1 голос
/ 24 марта 2012

Когда вы сталкиваетесь с тем, что возможно с C #, вы всегда можете начать вызывать нативный код, такой как Windows API.Поскольку вы не задаете конкретный вопрос, я оставлю вам:

  • Расположите приложение там, где вы хотите, чтобы оно отображалось, и скройте его.
  • Захват позиции мыши с помощью оконapi (см. этот ответ SO )
  • Когда мышь находится в углу экрана / вверху и т. д .;сделайте ваше приложение видимым.

Теперь убедитесь, что все это работает с настройкой двойного экрана, и все готово.

...