打开表单时更改窗口不透明度
Posted
技术标签:
【中文标题】打开表单时更改窗口不透明度【英文标题】:Change window opacity when opening a form 【发布时间】:2011-04-28 15:37:44 【问题描述】:我正在尝试在加载前自动更改表单的不透明度。 我正在使用内置的设置功能来保存窗口应该具有的不透明度值。 问题是,当我调试我的应用程序时,一切正常,当我编译它并尝试打开可执行文件时,窗口就消失了......我没有收到任何错误。
这就是我正在尝试的方式:
首先在设置中有一个名为不透明度(int)的值,范围为0-100
private void Form1_Load(object sender, EventArgs e)
this.Opacity = WindowsFormsApplication1.Properties.Settings.Default.opacity * 0.01;
【问题讨论】:
你的设置有什么价值?我创建了一个 Windows 应用程序,将不透明度设置为 50,将 .exe 复制到桌面并运行它没有问题。 【参考方案1】:您的问题是不透明度值 1.0 完全可见,0.0 完全不可见。任何高于 1.0 的内容也都视为完全可见。
编辑
好的,所以在重新阅读您的问题之后......也许不是使用默认值,而是使用像 0.5 这样的常量来测试它。
【讨论】:
我知道。问题是当我运行exe时,窗口根本没有打开。只有任务栏上的图标。当我调试它时,它工作得很好......【参考方案2】:当您调试时,您保存的设置将在运行之间保持不变。部署时,它会复制默认设置文件。
在运行发布 exe 时检查设置文件 opacity 是否实际加载正确。我有一种感觉,要么默认为 0,要么没有加载。
【讨论】:
我有同样的想法...我可以从我的内置设置中更改值,它可以很好地写入 xml 文件...具有正确的值。以上是关于打开表单时更改窗口不透明度的主要内容,如果未能解决你的问题,请参考以下文章