var
x:longint;
a:string;
begin
x := GetSystemMetrics(SM_CXSCREEN);
Str(x
a);
Label1.Caption := ''显示器水平分辨率'' + a;
x := GetSystemMetrics(SM_CYSCREEN);
Str(x
a);
Label2.Caption := ''显示器垂直分辨率'' + a;
end;
启动屏幕保护
执行下列语句开始Windows屏幕保护程序
SendMessage(HWND_BROADCAST
WM_SYSCOMMAND
SC_SCREENSAVE
0);
取系统颜色
要取得系统颜色,把参数换一下就可以
COLOR_SCROLLBAR 滚动条
COLOR_BACKGROUND 桌面背景
COLOR_ACTIVECAPTION 活动窗口标题
cOLOR_INACTIVECAPTION 非活动窗口标题
cOLOR_MENU 菜单
COLOR_WINDOW 窗口背景
cOLOR_WINDOWFRAME 窗口框
COLOR_MENUTEXT 窗口文字
COLOR_WINDOWTEXT 3D 阴影 (Win95)
COLOR_CAPTIONTEXT 标题文字
COLOR_ACTIVEBORDER 活动窗口边框
COLOR_INACTIVEBORDER 非活动窗口边框
COLOR_APPWORKSPACE MDI 窗口背景
COLOR_HIGHLIGHT 选择条背景
COLOR_HIGHLIGHTTEXT 选择条文字
COLOR_BTNFACE 按钮
COLOR_BTNSHADOW 3D 按钮阴影
COLOR_GRAYTEXT 灰度文字
COLOR_BTNTEXT 按钮文字
COLOR_INACTIVECAPTIONTEXT 非活动窗口文字
COLOR_BTNHIGHLIGHT 3D 选择按钮}
var i:integer;
begin
//取得活动窗口标题颜色
i :=GetSysColor(COLOR_ACTIVECAPTION);
end;
动态修改显示器分辨率
Windows提供给我们两个API函数,可以动态调整显示器的分辨率,他们是EnumDisplaySettings() 和ChangeDisplaySettings(),下面这个例子就是了
function DynamicResolution(X
Y: word): BOOL;
var
lpDevMode: TDeviceMode;
begin
Result := EnumDisplaySettings(nil
0
lpDevMode);
if Result then
begin
lpDevMode.dmFields := DM_PELSWIDTH Or DM_PELSHEIGHT;
lpDevMode.dmPelsWidth := X;
lpDevMode.dmPelsHeight := Y;
Result := ChangeDisplaySettings(lpDevMode
0) = DISP_CHANGE_SUCCESSFUL;
end
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if DynamicResolution(640
480) then
ShowMessage(''Now is 640*480'');
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
if DynamicResolution(800
600) then
ShowMessage(''Now is 800*600'');
end;
隐藏桌面上的图标
使桌面上的图标消失,连桌面上的右键功能也不能使用如果不让初学者乱用“我的电脑”的话,那么把程序放到“启动”里,顺便把“Windows资源管理器”也去掉, 再加上个多用户密码,那么想破坏电脑文件也无从下手了。该程序Delphi 4里通过
var
hDesktop : THandle;
begin
hDesktop := FindWindow(''Progman''
nil);
ShowWindow(hDesktop
SW_HIDE);
end;
怎样获得程序启动快捷键中记载的程序路径
ShortCut that Started Application?
OK
your problem is not setting current directory but you want to take
ANY
shortcut and resolve its properties. Am I correct now ? :))
Take a look at unit ShlObj and IShellLink. (API help file)
var SCut: IShellLink;
SCut.Resolve
GetWorkingDirectory - Retrieves the name of the working directory for a
shell link object
GetPath - Retrieves the path and filename of a shell link object.
I have not done this before
just giving you ideas
让彩色光标出现在Delphi程序中
在Delphi中用Loadcursor()得到的光标只有黑白两色,怎样在程序中得到彩色光标呢?笔者尝试制作了以下程序:
方法一 用Loadcursorfromfile()从外部调入图标作为光标
Loadcursorfromfile()函数可以读*CUR,*ICO,*AN