相关资料:

http://www.bianceng.cn/Programming/Delphi/201104/25455.htm

http://blog.csdn.net/anbangs/article/details/5008923

http://bbs.csdn.net/topics/280065261?locationNum=11

注意事项:

1.改屏幕分辨率时,不是随意的,如果显示器不支持的话,只能右击属性里面看一下支持哪些分辨率。

实例代码:

 unit Unit1;

 interface

 uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls,
Vcl.Imaging.jpeg; type
TForm1 = class(TForm)
Button2: TButton;
Button3: TButton;
Button4: TButton;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Button1: TButton;
Image1: TImage;
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end; var
Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject);
var
mmW,mmH: Integer;
pixW,pixH: Integer;
pm: Double;
begin
{以毫米为单位获取屏幕尺寸}
mmW := GetDeviceCaps(Canvas.Handle, HORZSIZE);
mmH := GetDeviceCaps(Canvas.Handle, VERTSIZE);
ShowMessageFmt('屏幕宽: %d 毫米; 屏幕高: %d 毫米', [mmW, mmH]);
{屏幕宽: 510 毫米; 屏幕高: 287 毫米}
{以像素为单位获取屏幕尺寸}
pixW := GetDeviceCaps(Canvas.Handle, HORZRES);
pixH := GetDeviceCaps(Canvas.Handle, VERTRES);
ShowMessageFmt('屏幕宽: %d 像素; 屏幕高: %d 像素', [pixW, pixH]);
{屏幕宽: 1920 像素; 屏幕高: 1080 像素}
{当前状态下, 1 毫米等于多少像素?}
ShowMessage(FloatToStr(pixW / mmW)); {3.76470588235294}
ShowMessage(FloatToStr(pixH / mmH)); {3.76306620209059}
{一步获取}
pm := GetDeviceCaps(Canvas.Handle, HORZRES) / GetDeviceCaps(Canvas.Handle, HORZSIZE);
ShowMessage(FloatToStr(pm)); {3.76470588235294}
end; procedure TForm1.Button2Click(Sender: TObject);
var
lpDevMode: TDeviceMode;
begin
EnumDisplaySettings(nil, , lpDevMode);
lpDevMode.dmFields := DM_PELSWIDTH or DM_PELSHEIGHT;
lpDevMode.dmPelsWidth := ;
lpDevMode.dmPelsHeight := ;
ChangeDisplaySettings(lpDevMode, );
end; procedure TForm1.Button3Click(Sender: TObject);
begin
Label1.Caption := IntToStr(screen.width);//宽
Label2.Caption := IntToStr(screen.height);//高
Label3.Caption := IntToStr(Screen.MonitorCount);//显示器数量
end; procedure TForm1.Button4Click(Sender: TObject);
begin
//我的电脑最大支持1920,所以返回的是1920
case GetDeviceCaps(GetDC(Form1.Handle), HORZRES) of
: //对640×480分辨率进行处理的代码;
begin
end;
: //对800×600分辨率进行处理的代码;
begin
end;
: //对1024×768分辨率进行处理的代码;
begin
end;
: //对1280×1024分辨率进行处理的代码;
begin
end;
://1600*900
begin
end;
://1920*1080
begin
end;
end;
end; end.

屏幕相关操作(XE10.1+WIN8.164)的更多相关文章

  1. 屏幕亮度(XE10.1+WIN8.164)

    相关资料: http://bbs.csdn.net/topics/390664310 实例代码: unit Unit1; interface uses Winapi.Windows, Winapi.M ...

  2. Android 图片文件操作、屏幕相关、.9图片的理解

     一:Android图片操作 1.存储bitmap到本地文件系统 public static void bitmapToFile(Bitmap bitmap, String uri) { if(!ex ...

  3. 获得硬盘的ID序列号(XE10.1+WIN8.1)

    疯狂delphi DelphiXE公开课群:100162924.58593121 朱建强QQ:513187410 获得硬盘的ID序列号(XE10.1+WIN8.1) 相关资料: https://zhi ...

  4. yum安装_yum命令的相关操作

    2017年1月11日, 星期三 yum安装的四种方式 一.默认:从国外下载 二.国内:从阿里获取  http://mirrors.aliyun.com 1. cd /etc/yum.repos.d 2 ...

  5. 从零自学Hadoop(20):HBase数据模型相关操作上

    阅读目录 序 介绍 命名空间 表 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 ...

  6. 从零自学Hadoop(21):HBase数据模型相关操作下

    阅读目录 序 变量 数据模型操作 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 ...

  7. 理解CSV文件以及ABAP中的相关操作

    在很多ABAP开发中,我们使用CSV文件,有时候,关于CSV文件本身的一些问题使人迷惑.它仅仅是一种被逗号分割的文本文档吗? 让我们先来看看接下来可能要处理的几个相关组件的词汇的语义. Separat ...

  8. Liunx下的有关于tomcat的相关操作 && Liunx 常用指令

    先记录以下liunx下的有关于tomcat的相关操作 查看tomcat进程: ps-ef|grep java (回车) 停止tomcat进程: kill -9 PID (进程号如77447) (回车) ...

  9. pip的相关操作

    >Python中的pip是什么?能够做些什么? pip是Python中的一个进行包管理的东西,能够下载包.安装包.卸载包......一些列操作 >怎么查看pip的相关信息 在控制台输入: ...

随机推荐

  1. ab,qps,服务器性能压力

    ab,qps,服务器性能压力   作者及来源: 陳聽溪 - 博客园    收藏到→_→:   摘要: ab,qps,服务器性能压力    http://www.makaidong.com/%E5%8D ...

  2. shell之“>/dev/null 2>&1”

    shell之“>/dev/null 2>&1” http://ixdba.blog.51cto.com/2895551/526442 今天在自己的一个技术群中又被问道了这么一个问题 ...

  3. CEF 各个版本适应的平台参考表

    This Wiki page provides information about CEF branches and instructions for downloading, building an ...

  4. OpenWrt 中安装配置Transmission

    参考文章https://wiki.openwrt.org/doc/uci/transmission 1. 安装包 必装的 transmission-daemon-openssl (后台服务)选装的 t ...

  5. 140730暑期培训.txt

    1.大数加减法    思路分析:        1.将数据当做字符串输入(gets(s))        2.将字符型转换为整型,逆着存            char? int      i=0,j ...

  6. Laravel中的信息验证 和 语言包

    首先,谈下语言包的问题 1.安装语言包,通过composer进行安装 composer require "overtrue/laravel-lang:dev-master" 2.成 ...

  7. JavaScript中的数组与伪数组的区别

    在JavaScript中,除了5种原始数据类型之外,其他所有的都是对象,包括函数(Function). 基本数据类型:String,boolean,Number,Undefined, Null 引用数 ...

  8. Opcode查看利器之vld

    简介 在PHP的生命周期中 词法分析(zend_language_scanner),将PHP代码转换为语言片段(Tokens) 语法分析(zend_language_parser)将Tokens转换成 ...

  9. HDU----专题训练

    Problem A Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 20000/10000K (Java/Other) Total Sub ...

  10. Android SDK目录结构介绍

    Android SDK目录下有很多文件夹,主要都是干什么的呢? 1. add-ons 这里面保存着附加库,比如Google Maps,当然你如果安装了Ophone SDK,这里也会有一些类库在里面. ...