zoukankan      html  css  js  c++  java
  • 界面进行暂时锁定[原]

            在项目中,有时对界面的控制是这样的,需要在当前界面操作未完成时不允许另外的界面进行操作,于是有了下面的代码:
     

     1    /// <summary>
     2    /// 控制系统维护界面当点击按钮时,对界面进行暂时锁定
     3    /// Add by: Maxc
     4    /// </summary>

     5    public class SetUserControlEnable
     6    {   
     7        [DllImport("user32.dll")]
     8        private static extern int SetWindowLong(IntPtr hWnd, int nIndex, int wndproc);
     9
    10        [DllImport("user32.dll")]
    11        private static extern int GetWindowLong(IntPtr hWnd, int nIndex);
    12
    13        private const int GWL_STYLE = -16;
    14        private const int WS_DISABLED = 0x8000000;
    15
    16        private static void SetControlEnabled(Control c, bool enabled)
    17        {
    18            if (enabled)
    19            { SetWindowLong(c.Handle, GWL_STYLE, (~WS_DISABLED) & GetWindowLong(c.Handle, GWL_STYLE)); }
    20            else
    21            { SetWindowLong(c.Handle, GWL_STYLE, WS_DISABLED + GetWindowLong(c.Handle, GWL_STYLE)); }
    22        }

    23
    24        当点击按钮的时候,让所有界面都被锁定 private void LockAllInterface()
    35
    36        点击之后,所有界面都被解锁 private void UnlockAllInterface()
    47    }

    通过上述代码就可实现想要的效果了。
  • 相关阅读:
    前端面试题及答案整理(一)
    关于提高网站性能的几点建议(二)
    关于提高网站性能的几点建议(一)
    基于ArcGIS JS API的在线专题地图实现
    关于婚姻的本质(转)
    14亿人的战争:中国人用了30年望见计算力的珠峰(转载)
    高效能人士的七个习惯--读书笔记
    乔布斯在斯坦福大学的演讲
    疫情加速医疗信息化行业景气上升,医疗信息化新黄金时代即将开启(转自公众号:先知研报)
    oracleXEUniv最大连接数修改
  • 原文地址:https://www.cnblogs.com/winnxm/p/1086525.html
Copyright © 2011-2022 走看看