DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: shz0000
今日帖子: 34
在线用户: 15
导航: 论坛 -> 发布代码 斑竹:liumazi,ruralboy  
作者:
男 sspeak (sspeak) ★☆☆☆☆ -
盒子活跃会员
2020/7/7 6:39:57
标题:
发一个自己写的调显示器亮度的小软件,简单有效,全部源代码 浏览:2846
加入我的收藏
楼主: 现在的显示器默认亮度实在太高了,长时间对着太伤眼了,找了一阵调亮度的软件,找到个开源的DarkDesktop,原理是用一个半透明窗口挡在最前面,效果很好,但代码实在太乱,而且是异乎寻常的乱,大家有兴趣可以自己去看看.最终自己重新写了一遍,附上源码.很好用.左键开关,右键跳出选项.
链接: https://pan.baidu.com/s/1Q_q0-Hnu5ovLXAPfn_AtOw 
提取码: 1kvp
此帖子包含附件:sspeak_20207764354.rar 大小:17.0K
----------------------------------------------
-
作者:
男 keymark (嬲) ▲▲▲△△ -
普通会员
2020/7/7 8:41:54
1楼: 按此在新窗口浏览图片
不错 浏览纯白网站 很管用。
加快捷键随时开关更爽了
----------------------------------------------
[alias]  co = clone --recurse-submodules  up = submodule update --init --recursiveupd = pullinfo = statusrest = reset --hard懒鬼提速https://www.cctry.com/>http://qalculate.github.io/downloads.htmlhttps://www.cctry.com/
作者:
男 szyourname (szyourname) ★☆☆☆☆ -
盒子活跃会员
2020/7/7 8:45:45
2楼: 嗯,简单却实用!
更可贵的是楼主的分享精神,赞!
----------------------------------------------
-
作者:
男 xjia (xjia) ★☆☆☆☆ -
盒子活跃会员
2020/7/7 9:24:00
3楼: 感谢分享~~
----------------------------------------------
-
作者:
男 delphiilove (乌羽玉) ★☆☆☆☆ -
普通会员
2020/7/7 9:33:02
4楼: 真不错,感谢分享。
----------------------------------------------
-
作者:
男 useguest (useguest) ★☆☆☆☆ -
普通会员
2020/7/7 15:54:41
5楼: 我改成Delphi7了,编译后只有300多K,upx压缩140K
此帖子包含附件:useguest_202077155441.zip 大小:7.0K
----------------------------------------------
-
作者:
男 snakegao (snakegao) ★☆☆☆☆ -
盒子活跃会员
2020/7/7 16:44:16
6楼: 感谢分享~~
----------------------------------------------
-
作者:
男 ybj316 (ybj) ★☆☆☆☆ -
盒子活跃会员
2020/7/7 17:41:18
7楼: DwmApi.pas 缺?
----------------------------------------------
-
作者:
男 wr960204 (武稀松) ★☆☆☆☆ -
盒子活跃会员
2020/7/8 10:51:52
8楼: 如果不用透明窗口覆盖,直接调用API调整真正的亮度和对比度会不会更好一点

const
  PHYSICAL_MONITOR_DESCRIPTION_SIZE = 128;
type
  LPPHYSICAL_MONITOR = ^TPHYSICAL_MONITOR;
  _PHYSICAL_MONITOR  = record
    hPhysicalMonitor : THandle;
    szPhysicalMonitorDescription : array[0..PHYSICAL_MONITOR_DESCRIPTION_SIZE] of WCHAR;
  end;
  TPHYSICAL_MONITOR = _PHYSICAL_MONITOR;

//获取监视器最大,最小,当前亮度
function GetMonitorBrightness(APhysicalMonitor : THandle; var pdwMinimumBrightness,pdwCurrentBrightness,pdwMaximumBrightness : DWORD):BOOL;stdcall; external 'Dxva2.dll';
//获取监视器最大,最小,当前对比度
function GetMonitorContrast(APhysicalMonitor : THandle; var pdwMinimumContrast,pdwCurrentContrast,pdwMaximumContrast : DWORD):BOOL;stdcall; external 'Dxva2.dll';
//设置监视器亮度
function SetMonitorBrightness(APhysicalMonitor : THandle; dwNewBrightness : DWORD):BOOL;stdcall; external 'Dxva2.dll';
//设置监视器对比度
function SetMonitorContrast(APhysicalMonitor : THandle; dwNewContrast : DWORD):BOOL;stdcall; external 'Dxva2.dll';
//从监视器获取物理监视器
function GetPhysicalMonitorsFromHMONITOR(AMonitor : THandle; dwPhysicalMonitorArraySize : DWORD; pPhysicalMonitorArray : LPPHYSICAL_MONITOR ):BOOL;stdcall; external 'Dxva2.dll';


var
  h : TPHYSICAL_MONITOR;
  i : Integer;
  minC,maxC, currC : DWORD;
  minB,maxB, currB : DWORD;
begin
  for I := 0 to Screen.MonitorCount - 1 do
  begin
    GetPhysicalMonitorsFromHMONITOR(Screen.Monitors[i].Handle, 1, @h);
    GetMonitorBrightness(h.hPhysicalMonitor, minB, currB, maxB);
    SetMonitorBrightness(h.hPhysicalMonitor, maxB );
    //
    GetMonitorContrast(h.hPhysicalMonitor, minC, currC, maxC);
    SetMonitorContrast(h.hPhysicalMonitor, maxC div 2);
  end;
end;
----------------------------------------------
武稀松http://www.raysoftware.cn
作者:
男 homejun (homejun) ★☆☆☆☆ -
盒子活跃会员
2020/7/8 21:27:43
9楼: 武兄的代码无效, GetMonitorBrightness(h.hPhysicalMonitor, minB, currB, maxB);就返回false了
----------------------------------------------
-delphi新资讯站 http://www.delphigear.cn
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行93.75毫秒 RSS