解决方案 »
- delphi+sql2000
- ▲▲▲▲DBchart 控件如何显示两个数据集,让其叠加显示???▲▲▲▲
- 在NT下如何使用DebugActiveProcess调试它进程的运行?最好有源码!
- 请问打开带密码的excel文件的语法格式怎么写?
- 有关Access的SQL语句的书写问题:
- Query的查询结果怎么存储下来?
- 请大家进来领分!(关于TMediaPlayer控件和RES文件)
- 这个新问题无法下手?你会吗?
- 窗口中OK和CANCEL键的问题
- 大家觉得争论VC++和delphi的好坏很有必要吗?
- 请教个Delphi检验码问题
- delphi有没有类似java里面的swingworker一样的插件?
var
dm : TDeviceMode;
dwTemp : DWORD;
dmDisplayOrientation : DWORD;
begin
ZeroMemory(@dm, sizeof(dm));
dm.dmSize := sizeof(dm);
if EnumDisplaySettings(nil, DWORD(ENUM_CURRENT_SETTINGS), dm) then
begin
Move(dm.dmScale,dmDisplayOrientation,SizeOf(dmDisplayOrientation));
// swap width and height
if Odd(dmDisplayOrientation)<>Odd(NewOrientation) then
begin
dwTemp := dm.dmPelsHeight;
dm.dmPelsHeight:= dm.dmPelsWidth;
dm.dmPelsWidth := dwTemp;
end;
if dmDisplayOrientation<>NewOrientation then
begin
Move(NewOrientation,dm.dmScale,SizeOf(NewOrientation));
if (ChangeDisplaySettings(dm, 0)<>DISP_CHANGE_SUCCESSFUL) then
RaiseLastOSError;
end;
end;
end;
begin
try
ChangeOrientation(DMDO_180);
Writeln('Changed to 180');
Readln;
ChangeOrientation(DMDO_270);
Writeln('Changed to 270');
Readln;
ChangeOrientation(DMDO_90);
Writeln('Changed to 90');
Readln;
ChangeOrientation(DMDO_DEFAULT);
Writeln('Default Orientation restored');
Readln;
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
readln;
end.