c#Form.Hide()vs. Form.Opacity = 0

我想知道是否有任何陷阱使表格完全透明(而不是隐藏它).例如,我知道这些是隐藏表单时让我感到惊讶的事情:

>如果隐藏表单,则无法与其控件进行交互(无法将HTML添加到Web浏览器控件,无法按下按钮等)
>当窗口被隐藏时,更改窗口的WindowState(最小化,最大化等)将导致窗口在再次显示窗体时显示在工作区域的范围之外.

在使用不透明度设置为0(完全透明)的表单时,是否有人遇到类似的问题(或完全不同的问题!)?

解决方法

从我的评论的投票,我想我会提交它作为答案.我不鼓励使用Form.Opacity = 0.即使您可以禁用表单以防止意外交互,我认为透明表单会覆盖其他窗口并使用户混淆为什么他不能与透明窗口后面的窗口进行交互.

至于Form.Hide()的问题,我通常将表单响应排队,以便当表单返回视图(或可见性)时,它会通过队列来处理操作(即更改FormState).在隐藏窗体时更改窗体也会让用户感到困惑.

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...