首页 > 学院 > 开发设计 > 正文

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

2019-11-17 05:29:59
字体:
来源:转载
供稿:网友

  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);        


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表