2

在 Windows 7 中,您可以将一个典型的窗口拖到屏幕顶部,您会看到最大化的窗口轮廓。如果您放手,Windows 将最大化该表单。同样,您可以取一个已经最大化的窗口并将其“拉”下来以将其恢复到正常的窗口状态。我想在我的 C# WinForms 应用程序中以无边框形式利用这些增强功能。

我的表单是无边界的,因此我可以创建自定义标题栏和最小化/最大化/关闭按钮。我可以通过拖动标题栏来移动我的表单,但我不知道如何插入 Windows 7 增强功能,这些增强功能为我提供了最大化轮廓或“下拉”功能。

有什么建议么?谢谢!

4

1 回答 1

0

几年前,我在 Delphi 7 中做过类似的事情。

1)Form - OnCLick - 在整个屏幕上捕获鼠标位置(也许这个链接会有所帮助:http: //msdn.microsoft.com/en-us/library/system.windows.forms.cursor.position.aspx),保存信息关于在私有变量中按下的按钮(例如:buttonPressed = true)
2) Form - OnMouseMove - 根据新的鼠标位置,移动窗口
3) Form - OnMouseUp - buttonPressed = false。如果光标坐标位于屏幕顶部 (x[0..screenW] y[0..10] ) --> 最大化。

只是一个提示,也许它会帮助你。

于 2013-02-14T01:42:17.263 回答