当前位置: 首页 > 图文教程 > 开发语言 > Delphi > Delphi使用技巧两则

Delphi
Delphi实现窗体控件自由摆布
利用Delphi编制IP地址转换器
用Indy组件开发Socket应用程序
Delphi模拟最小化恢复关闭按纽
简析XML及其在Delphi中的应用
Delphi开发基于DCOM的聊天室
Delphi实现远程串口的数据采集
Delphi托盘编程实战演练
在Delphi中使用电子邮件
Delphi开发98屏幕保护预览程序
Delphi实现同类型文档自动合并
Delphi 8 For .NET 抢先预览
Delphi图像存取另类解决方案
用Delphi实现动态获取版本信息
用Delphi客户端访问EJB组件
Delphi中数据网格DBGrid应用
Delphi数据库控件使用入门
Delphi下的COM编程技术简介
用Delphi轻松实现背景播放
也谈TTreeView、TListView用法

Delphi使用技巧两则


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 56 ::
收藏到网摘: n/a

 
一、如何动态更改屏幕分辨率
  有许多小工具可以在不重新启动Windows的条件下,动态更改屏幕分辨率。你是不是也想自己动手做一个呢?请在interface段中加入下面一句
  function Resolution(X,Y:word):boolean;
  然后在implementation段中写入如下代码:
  function Resolution(X,Y:word):boolean;
  var
  DevMode:TDeviceMode;
  begin
  Result:=EnumDisplaySettings(nil,0,DevMode);
  if Result then
  begin
  DevMode.dmFields:=DM_PELSWIDTH Or DM_PELSHEIGHT;
  DevMode.dmPelsWidth:=X;
  DevMode.dmPelsHeight:=Y;
  Result:=ChangeDisplaySettings(DevMode,0)=DISP_CHANGE_SUCCESSFUL;
  end;
  end;
  接着,在form中放个button,caption为“800×600”,然后在其OnClick事件中写下
  if Resolution(800,600) then ShowMessage('800×600模式!');
  好了,试一下吧!
  二、如何把文件放入回收站
  为了保险起见,我们通常把要删除的文件先放入回收站中,但是在delphi中似乎没有这样现成的语句。如果你查询help,它只会告诉你用deletefile函数会“不可挽回地”删除文件(真要恢复当然也可以办到,只是很麻烦)。那怎么办呢?别急,假设要安全地删除c:\temp.tmp文件,可用以下代码实现。
  Var T:TSHFileOpStruct;
  filename:String;
  begin
  filename:='c:\temp.tmp';
  with T do
  begin
  Wnd:=0;
  wFunc:=FO_DELETE;
  pFrom:=Pchar(filename);
  fFlags:=FOF_ALLOWUNDO
  end;
  try
  SHFileOperation(T);
  except
  on eaccessviolation do showmessage('删除命令已被取消!');
  end;
  注意,如果指定文件不存在,或者在确认删除时按了“取消”,都会执行except后的语句。最后再提醒一句,别忘了在uses语句中加上shellapi。
  以上程序在Delphi3中调试通过。