Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 消息周围的不透明性_C#_Winforms - Fatal编程技术网

C# 消息周围的不透明性

C# 消息周围的不透明性,c#,winforms,C#,Winforms,在winform中,是否可以在弹出屏幕周围制作高不透明度的poup屏幕?如果是,如何进行 如何使弹出式消息或GUI屏幕位于计算机屏幕的中间? 请记住,我还没有任何源代码 例如: 要在屏幕中央显示您的表单,请使用StartPosition表单属性至中心屏幕 this.StartPosition = FormStartPosition.CenterScreen; 现在,将屏幕其余部分变成灰色。 采用新的表单将其命名为frmBlur,并设置这些属性 this.BackColor = System

在winform中,是否可以在弹出屏幕周围制作高不透明度的poup屏幕?如果是,如何进行

如何使弹出式消息或GUI屏幕位于计算机屏幕的中间?

请记住,我还没有任何源代码

例如:


要在屏幕中央显示您的
表单
,请使用
StartPosition
表单属性至中心屏幕

this.StartPosition = FormStartPosition.CenterScreen; 

现在,将屏幕其余部分变成灰色。

采用新的
表单
将其命名为frmBlur,并设置这些属性

this.BackColor = SystemColors.ControlDark;            
this.FormBorderStyle = FormBorderStyle.None;            
this.Opacity = 0.8;
this.ShowInTaskbar = false;  
this.TopMost = true;
this.WindowState = FormWindowState.Maximized;      

现在,使用下面的代码显示MessageBox或winform

private void button1_Click(object sender, EventArgs e)
    {
        using (frmBlur ob = new frmBlur())
        {
            ob.Show();
            frmMessage f = new frmMessage();
            f.TopMost = true;
            f.ShowDialog();
        }
    }

你说的是在邮件周围使屏幕的其余部分变灰(或变暗)吗?在web应用程序中通常指的效果?此效果应保留给UAC提示。模拟它只会让你的用户感到困惑,并使使用其他程序变得不必要的困难。她的下一步可能是运行您的卸载程序。虽然我倾向于同意Hans的观点,但我也很感激您的客户可能会要求此功能。这就是为什么我建议您只将应用程序的窗口显示为灰色,而不是整个屏幕。UAC会使整个屏幕变暗,并使其他应用程序难以使用。如果你只对自己的应用程序进行灰色处理,用户会更清楚发生了什么,他们仍然可以切换到不同的应用程序。除非你必须这样做,否则不要这样做,但如果你必须这样做,这是正确的方法。我不会把它放在首位,因为这会阻止用户与计算机上的其他应用程序交互。由于该示例不是系统模式对话框,因此它应该只限制对应用程序其余部分的访问。最简单的方法是使用
ShowDialog
方法(而不是
Show
)并适当设置Z顺序。“并适当设置Z顺序”。我不明白这个上下文?你真的不必设置z顺序。仅显示灰色窗体的对话框;然后(在灰色窗体的OnShown中)显示实际对话框的对话框。如果您想让它看起来更漂亮,请使灰色窗体与您要隐藏的主窗体的形状和大小完全相同。@Fullmetalboy:对,如果您以正确的顺序显示窗体,Z顺序将自动正确设置。你只需要手动管理它,如果你做的事情是无序的。我的意思是,你的主窗体应该在背景中,上面是深色的透明窗体,最后是你的消息框在Z顺序的最上面。