一隐藏任务栏屏蔽热键
在自己的程序中将任务栏隐藏起来并屏蔽Ctrl+Alt+Del和Alt+Tab等系统热键也是很有趣的要实现它们比较容易但千万别忘了恢复正常另外本例中使用了个API函数FindWindowShowWindow和SystemParametersInfo在使用它们之前一定要进行申明
Implementation
var Hwnd:THandle;
Tmp:integer;
procedure TFormButtonClick(Sender: TObject);
begin
Hwnd:=FindWindow(Shell_TrayWndnil);
if Hwnd<> then ShowWindow(HwndSW_HIDE); //隐藏任务栏
SystemParametersInfo(SPI_SCREEN
SAVERRUNNING@Tmp); //屏蔽系统热键
end;
procedure TFormButtonClick(Sender: TObject);
begin
Hwnd:=FindWindow(Shell_TrayWndnil);
ShowWindow(HwndSW_SHOW); //恢复任务栏
SystemParametersInfo(SPI_SCR
EENSAVERRUNNING@Tmp);
//恢复系统热键
end;
二动态调整显示器分辨率
Delphi提供了可以动态改变屏幕分辨率的函数分别是EnumDisplaySettings()和ChangeDisplaySettings()有了它们编程时可以随时改变分辨率以适应要求下面的CRTReset函数能方便实现这一功能
implementation
function CRTReset(X Y: Word): Boolean;
var
lpDevMode: TDeviceMode;
begin
Result:= EnumDisplaySettings(nil lpDevMode); //获取显示模式
if Result then begin
lpDevModedmFields := DM_PELSWID
TH Or DM_PELSHEIGHT;
lpDevModedmPelsWidth := X;
lpDevModedmPelsHeight := Y; //设置屏幕的宽度和高度
Result:= ChangeDisplaySettings(lpDevMode ) = DISP_CHANGE_SUCCESSFUL;
//改变屏幕分辨率并返回成功与否
end;
end;
procedure TFormButtonClick(Sender: TObject);
begin
if CRTReset( ) then ShowMessage(Now is *); //调用函数设置分辨率为×
end;
三鼠标滚轮如何编程
我们使用的鼠标很多都带有一个滚轮方便用户的操作但遗憾的是平时编程多数只利用到鼠标的左右两键如果将滚轮操作功能也加进你的程序定能使其增色不少
当鼠标指针指向窗体中时Delphi为滚轮滚动提供OnMouseWheel事件我们可以对它进行相应的处理本例中在窗体内放置一标签Label用于显示滚轮滚动的效果
implementation
var i:integer;
procedure TFormFormCreate(Sender: TObject);
begin
i:=;
LabelCaption:=inttostr(i);
end;
procedure TFormFormMouseWheel(Sender: TObject; Shift: TShiftState;
WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
begin
if WheelDelta> then i:=i+ else i:=i;
//wheelDelta参数表示滚动一格的值向上滚动为正数向下滚动则为负数
LabelCaption:=inttostr(i);
end;