GTK C# 小部件更改颜色不起作用

2024-04-05

我试图通过使用更改 GTK# 中按钮小部件的颜色

button1.ModifyBase(Statetype.Normal,new Gdk.Color(1,1,1));

这是从另一个按钮单击事件调用的,但小部件颜色未更新

为什么是这样?


您可以只使用ModifyBG 方法,而不是“片状”ModifyBase,并传递相同的参数。

button1.ModifyBG(Statetype.Normal,new Gdk.Color(1,1,1));

顺便说一句,我说“片状”是因为您正在 Mono GTK# 下处理 GTK2.x,并且在涉及“主题”和 Mono 时双方都存在大量问题。 GTK3 有一个使用 CSS 方法的组合模型,但 Mono 发行版停留在 GTK2 上。如果您希望以 GTK 方式对您的应用程序进行主题/着色,您可以搜索主题 GTK 2.x。注意:如果使用 MonoDevelop/XS,请确保在 IDE 之外定期测试/运行它,因为应用程序主题会发生变化(这在 OS-X 上非常明显,而且这个问题可以追溯到很多年前)。

如果您有其他小部件在其背景颜色中“行为”不正确,您可以将它们放置在事件框小部件中,因为该小部件具有背景,而其他小部件可能没有。您可以在 Mono 电子邮件线程中搜索此条件,因为它自 2007 年以来一直存在。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

GTK C# 小部件更改颜色不起作用 的相关文章

随机推荐