【问题标题】:How to DISABLE transparency for TextView in GTK#?如何在 GTK# 中禁用 TextView 的透明度?
【发布时间】:2018-03-23 12:25:53
【问题描述】:

我正在制作一个 GTK# 应用程序,但我对 TextView 有一些奇怪的行为(或者可能是 ScrolledWindow,无法确定):

它基本上是复制它背后的任何东西并将其用作背景,而背景应该是纯色。当我切换标签时,它甚至会显示之前选择的标签中的内容。

如何解决此问题?

【问题讨论】:

  • 您可以只问您特别想看哪一部分,尤其是考虑到我不知道问题出在哪里

标签: c# mono gtk gtk#


【解决方案1】:

好吧,我不喜欢我必须这样做,但它确实有效:

    // Fix the weird display bug
    drawnHandler = new DrawnHandler((o, args) =>
    {
        this.Drawn -= drawnHandler;
        var color = ConsoleBox.StyleContext.GetBackgroundColor(StateFlags.Normal);
        ConsoleBox.OverrideBackgroundColor(StateFlags.Normal, new Gdk.RGBA()
        {
            Red = color.Red,
            Green = color.Green,
            Blue = color.Blue,
            Alpha = 1
        });
    });
    this.Drawn += drawnHandler;

这会获得正确的背景颜色,并在没有 alpha 的情况下设置它(我什至不确定最初是如何设置 alpha 的,因为我从未在代码中的任何地方更改背景颜色)。

【讨论】:

    猜你喜欢
    • 2012-05-02
    • 1970-01-01
    • 2012-06-14
    • 2013-02-11
    • 1970-01-01
    • 1970-01-01
    • 2012-02-08
    • 2013-01-17
    • 2021-08-25
    相关资源
    最近更新 更多