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

王朝other·作者佚名  2008-06-01
宽屏版  字体: |||超大  

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

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有