zoukankan      html  css  js  c++  java
  • [置顶] C# WINCE调节屏幕亮度

    在wince里面保存屏幕亮度的值保存在注册表HKEY_CURRENT_USERControlPanel\BacklightBrightness里面,值的范围是0-100,所以要改变屏幕的亮度,只要改变这个值,然后重新加载就行代码如下:



    /// <summary>
        /// 调节屏幕的亮度
        /// </summary>
        public class SetBackLight
        {
            public static void SetBright(string strValue)
            {
                SetBackLightValue(strValue);
                ReloadBackLight();
            }
            public static int GetBacklightValue()
            {
                RegistryKey CUser = Registry.CurrentUser;
                RegistryKey Backlight = CUser.OpenSubKey("ControlPanel\Backlight", true);
                return (int)Backlight.GetValue("Brightness", RegistryValueKind.DWord);
            }
            public static void SetBackLightValue(string strValue)
            {
                try
                {
                     
                    RegistryKey hkcu = Registry.CurrentUser;
                    RegistryKey Backlight = hkcu.OpenSubKey("ControlPanel\Backlight", true);
                    Backlight.SetValue("Brightness", strValue, RegistryValueKind.DWord);
                }
                catch (Exception ex)
                {
                    System.Diagnostics.Debug.WriteLine(ex.Message);
                }
            }
    
    
            public static bool ReloadBackLight()
            {
              
                bool ret = false;
                IntPtr scanEvent = NativeWin.CreateEvent(IntPtr.Zero, false, false, "BackLightChangeEvent");
                if (scanEvent == null)
                {
                    throw new Exception("CreateEvent失败");
                }
                else
                {
                    NativeWin.EventModify(scanEvent, EventFlags.SET);
                    NativeWin.CloseHandle(scanEvent);
                    ret = true;
                }
                return ret;
            }
    
    
            partial class NativeWin
            {
                [DllImport("coredll.dll", SetLastError = true, CharSet = CharSet.Auto)]
                internal static extern IntPtr CreateEvent(IntPtr lpEventAttributes, [In, MarshalAs(UnmanagedType.Bool)] bool bManualReset, [In, MarshalAs(UnmanagedType.Bool)] bool bIntialState, [In, MarshalAs(UnmanagedType.BStr)] string lpName);
    
    
                [DllImport("coredll.dll", SetLastError = true, CharSet = CharSet.Auto)]
                [return: MarshalAs(UnmanagedType.Bool)]
                internal static extern bool CloseHandle(IntPtr hObject);
    
    
                [DllImport("coredll.dll", SetLastError = true)]
                [return: MarshalAs(UnmanagedType.Bool)]
                internal static extern bool EventModify(IntPtr hEvent, [In, MarshalAs(UnmanagedType.U4)] EventFlags dEvent);
            }
    
    
            enum EventFlags : int
            {
                PULSE = 1,
                RESET = 2,
                SET = 3
            }
    
    
        }


  • 相关阅读:
    P2216-[HAOI2007]理想的正方形
    P2157-[SDOI2009]学校食堂
    Leetcode-5176 Number of Valid Words for Each Puzzle(猜字谜)
    Leetcode-5175 Can Make Palindrome from Substring(构建回文串检测)
    Leetcode-5174 Diet Plan Performance(健身计划评估)
    Task6.PyTorch理解更多神经网络优化方法
    Task5.PyTorch实现L1,L2正则化以及Dropout
    Task4.用PyTorch实现多层网络
    Task3.PyTorch实现Logistic regression
    Task2.设立计算图并自动计算
  • 原文地址:https://www.cnblogs.com/keanuyaoo/p/3290021.html
Copyright © 2011-2022 走看看