【问题标题】:Making a form transparent while maintaining text clarity在保持文本清晰的同时使表单透明
【发布时间】:2022-01-10 19:58:00
【问题描述】:

所以我一直在为有趣的人制作一个股票跟踪器,我只需要克服 1 个障碍。那就是:我想让应用程序中的所有内容基本上都是透明的,除了文本和边框。

我尝试过在谷歌搜索时遇到的各种事情,例如

this.BackColor = Color.Magenta;
this.TransparencyKey = BackColor;

这行得通,只是它也弄乱了我的标签文本的字体/边框(?),导致:

我很想知道是否有办法去除标签文本周围的阴影,那样的话就完美了。

我也尝试过其他的东西,比如搞砸这个:

protected override void OnPaintBackground(PaintEventArgs e)
{
  //variations of code here
}

这完全搞砸了一切,原因我还不明白,就像这样:

然后我继续尝试弄乱以下代码的变体,但似乎什么也没做:

this.SetStyle(ControlStyles.USerPaint, true);
this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
this.SetStyle(ControlStyles.DoubleBuffer, true);
// more variations of code

也许我对这一切的了解还不够多(我根本不了解 OnPaintBackground 方法),但无论如何我都感到有点失落。有人知道如何解决这个问题吗?

【问题讨论】:

  • 我建议你放弃 WinForms 并至少使用 WPF,因为 WinForms 不支持堆叠控件、真正的透明度等。您使用 WinForms 有什么原因吗?
  • “我很想知道是否有办法去除标签文本周围的阴影,在这种情况下,这将是完美的。” - 我不认为那些是“阴影”,我认为那些是亚像素抗锯齿(“ClearType”)的伪影。我想你可以禁用它,这样你就可以干净地隔离文本,但你还需要禁用 all 抗锯齿,而不仅仅是亚像素抗锯齿 - 最终结果将清晰易读,但它不会要漂亮(想想:非常 1995 年的样子)。
  • 我在一家在他们的软件中使用 WinForms 的公司工作,我想我会弄乱它来熟悉一下。
  • 很公平——毕竟,自我提升是一个正当的理由。但我确实建议您完成此操作后,在 WPF 中再次尝试 - 如果只是为了感受 WPF 的不同之处。
  • @Dai 你的回答确实导致了一些有用的东西。非常感谢!如果您想将其发布为答案,请继续,否则我想我会自己发布它来回答这个问题:)

标签: c# .net winforms stock stockquotes


【解决方案1】:

@Dai,我试过了,把所有的标签文字都变白了,但是我不能再按按钮了

public Form1()
        {
            InitializeComponent();
            this.BackColor = Color.Magenta;
            this.TransparencyKey = BackColor;
        }
        protected override void OnPaint(PaintEventArgs e)
        {
            e.Graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
            e.Graphics.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
            e.Graphics.DrawString(" ", Font, new SolidBrush(ForeColor), 0, 0);
        }

对解决方案有任何想法吗?

结果基本完美,只是我不能再按按钮了

编辑:找到答案,Backcolor 不能有 R & B 相等的值...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-17
    • 1970-01-01
    • 1970-01-01
    • 2011-04-01
    相关资源
    最近更新 更多