日期:2014-05-17  浏览次数:21068 次

求解C#如何才不能关闭和最小化;
就是一个软件,如何在用户填完完整信息后才能退出,否则不能关闭和最小化
------最佳解决方案--------------------
要禁止关闭,可以在窗体的Closing事件中设置对应的e.Cancel=true,
要禁止最小化,可以设置窗体的MinimizeBox属性为False,
填完完整信息后允许关闭,那就需要设置个全局的bool变量,,在填完完整信息后把这个变量置为true,在窗体的Closing事件中用这个变量给对应的e.Cancel赋值。
------其他解决方案--------------------
在外面加个bool变量,当用户填写完毕时设为true,否则为flase
重写wndproc


  bool flag = false;
        protected override void WndProc(ref Message m)
        {
            if (m.Msg == 0x10 && !flag)
                return;
            if (m.Msg == 0x0112 && m.WParam == (IntPtr)0xF020 && !flag)
                return;
            base.WndProc(ref m);
        }
------其他解决方案--------------------
也可以在formClosing事件中e.cancel = true;
------其他解决方案--------------------
引用:
要禁止关闭,可以在窗体的Closing事件中设置对应的e.Cancel=true,
要禁止最小化,可以设置窗体的MinimizeBox属性为False,
填完完整信息后允许关闭,那就需要设置个全局的bool变量,,在填完完整信息后把这个变量置为true,在窗体的Closing事件中用这个变量给对应的e.Cancel赋值。

补充一点,赋值的时侯要在对应的变量前加!
------其他解决方案--------------------
重写wndproc

是什么意思呢,我是新手很多不懂不好意思啊
------其他解决方案--------------------
还可以用

Form1.ControlBox = false; 

将Form的ControlBox设为不可见,在画面添加一个Button控制是否可以退出
------其他解决方案--------------------
引用:
还可以用


C# code
?



12

Form1.ControlBox = false; 
将Form的ControlBox设为不可见,在画面添加一个Button控制是否可以退出

我有点不理解也
------其他解决方案--------------------
处理Closing事件
------其他解决方案--------------------
引用:
引用:
要禁止关闭,可以在窗体的Closing事件中设置对应的e.Cancel=true,
要禁止最小化,可以设置窗体的MinimizeBox属性为False,
填完完整信息后允许关闭,那就需要设置个全局的bool变量,,在填完完整信息后把这个变量置为true,在窗体的Closing事件中用这个变量给对应的e.Cancel赋值。
补充一点,赋值的时侯要在对应……


在前面加是什么意思?
------其他解决方案--------------------
bool flag = false;
e.Cancel=!flag;
类似这样
------其他解决方案--------------------
引用:
bool flag = false;
e.Cancel=!flag;
类似这样

明白了,谢谢你哦