【问题标题】:Making a transparent button制作透明按钮
【发布时间】:2013-02-23 11:17:42
【问题描述】:

我正在开发一个 Winforms 应用程序并为 Microsoft .NET Framework 导入了 Windows API 代码包。以下是我的代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Microsoft.WindowsAPICodePack.Taskbar;
using Microsoft.WindowsAPICodePack.Shell;    

namespace Glass_Test2
{
...
}

但是当我尝试在上面添加一个按钮时,结果是这样的:

任何人都可以告诉我如何使此处的按钮透明吗?

【问题讨论】:

  • 这是一个新应用吗?除非您要维护一些遗留应用程序或必须针对非常旧的操作系统,否则我建议您改用 WPF。 WinForm 的最大问题之一是透明度。如果您要制作一个很大程度上依赖于 WinForm 透明度的应用程序,那么您将走向一个痛苦的世界。显然,如果您非常了解 WinForm 而完全不了解 WPF,那么它是一个更棘手的决定,但如果您对这两者都相当陌生或经验丰富,那么肯定会为这种事情选择 WPF。
  • 同意@quibblesome,winforms 不支持。最好采用(理智的)WPF 方式。另外,为什么您的问题被标记为 ASP.Net?

标签: c# winforms c#-4.0


【解决方案1】:

如果您不能切换到 WPF,我会使用 GDI+ 并绘制矩形 - 它可以响应鼠标事件。现在您可以控制透明度了。

Public Class GDIButton
  Public Property Bounds As Rectangle
  Public Property Text As String
  Public Property BorderColor As Color
  Public Property FillColor As Color
End Class

【讨论】:

    猜你喜欢
    • 2010-11-08
    • 2018-02-05
    • 1970-01-01
    • 2011-06-02
    • 2014-05-05
    • 2014-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多