4

我一直在寻找这方面的一些资源,但我找不到任何资源,所以我会在这里带来。

我想制作一个与打开快速启动栏时看到的快速启动框风格相似的窗口:

示例窗口 http://img63.imageshack.us/img63/6204/volcontrolstyleguide.png

可悲的是,我找不到这方面的任何资源;你能帮我吗?

4

4 回答 4

6

这很简单。创建一个新表单,并将ControlBoxMaximizeBoxMinimizeBox属性设置为false。将Title属性设置为空字符串。这将有效地消除非客户端标题栏区域,为您提供:

没有非客户区的简单winforms窗口

内部部分(如“自定义”)可以使用适当大小的面板和链接进行复制。

于 2010-05-31T22:03:43.540 回答
1

假设:

  1. 这是一个固定大小的表格,永远不会重新调整大小

  2. 您希望它可以在 XP 和 Vista 上工作(即,不使用 Vista 特定的技术,如“Glass”)。我之所以提到这一点,是因为毕竟系统托盘确实可以追溯到旧石器时代晚期 :)

就是这样 :

  1. 创建一个与 .png 文件大小相同的表单

  2. 将 ControlBox、MaximizeBox、MinimizeBox 属性设置为 'false

  3. 将 FormBorderStyle 设置为“无”

  4. 将 Form 的透明度键设置为某种颜色,并将 Form 的背景颜色设置为相同的颜色:注意使用 .png 文件中未出现的颜色。

  5. 在 Form 上放置一个 PictureBox,将其 Dock 属性设置为 'Fill :为所有 Margins 设置其 Margin 属性 #0 :将其 BackColor 设置为 'Transparent :然后,自然地将 PictureBox 的 Image 属性设置为您的 .png 文件。

笔记 :

如果您已准备好 .png 图像,使其以透明区域为界,使其显示为圆形:您可以直接使用该图像,并通过使用 API 调用跳过实际制作圆角矩形的整个步骤来设置表单区域:这确实意味着您的表单将有一个标准的矩形边界框。如果你能忍受这个:这是一个更简单的解决方案。有关如何设置区域:请继续阅读...

  1. 有关如何将表单的区域设置为 RoundedRect 的信息,请参见此处的“如何制作圆角矩形或圆形或三角形”:此 SO 条目中有几个其他链接到代码示例:Zyphrax 提到的链接在这里使用相同的基本技术。

  2. 尝试“CreateRoundRect”的设置以获得您想要的圆角效果。

于 2010-01-30T22:47:30.247 回答
0

听起来您需要 Windows 7 API 代码包,其中一些 API 向后兼容 Vista。由于没有说明 Windows 的特定版本,所以我不能具体说明..您可以在 CodeProject 上查看这里这里是如何完成的。

希望这会有所帮助,最好的问候,汤姆。

于 2010-01-30T19:09:27.657 回答
0

您可以使用普通表单并将其修改为您的屏幕截图:

  1. 将 FormBorderStyle 属性设置为无
  2. 绕过表格的角落:更多信息在这里
  3. (如果您愿意,可以延长玻璃杯:更多信息,仅限 Vista 或更高版本)
  4. 将背景设置为白色并添加一些控件来完成它
于 2010-01-30T19:15:07.507 回答