当前位置:首页 >> 编程开发 >> Visual C++ >> 内容

用CB动态改变显示器分辨率

时间:2008/1/5 作者:平凡之路 来源:xuhantao.com 浏览:

void __fastcall TForm1::btnGetClick(TObject *Sender)
{
  int x,y;
  x = GetSystemMetrics(SM_CXSCREEN);
  y = GetSystemMetrics(SM_CYSCREEN);
  ShowMessage("显示器水平分辨率:" + AnsiString(x) + "\n\n显示器垂直分辨率:" + AnsiString(y));
}
//---------------------------------------------------------------------------
void __fastcall TForm1::DynamicResolution(int x,int y)
{
  TDeviceMode lpDevMode;
  bool Result;
  Result = EnumDisplaySettings(NULL,0,&lpDevMode);
  if (Result)
  {
     lpDevMode.dmFields = DM_PELSWIDTH | DM_PELSHEIGHT;
     lpDevMode.dmPelsWidth = x;
     lpDevMode.dmPelsHeight = y;
     Result = ChangeDisplaySettings(&lpDevMode,0);
     // = DISP_CHANGE_SUCCESSFUL;
  }
}
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
  DynamicResolution(800,600);    
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn2Click(TObject *Sender)
{
  DynamicResolution(1024,768);    
}

相关文章
  • 没有相关文章
共有评论 0相关评论
发表我的评论
  • 大名:
  • 内容:
  • 徐汉涛(www.xuhantao.com) © 2024 版权所有 All Rights Reserved.
  • 部分内容来自网络,如有侵权请联系站长尽快处理 站长QQ:965898558(广告及站内业务受理) 网站备案号:蒙ICP备15000590号-1