查看单个帖子
旧 2008-07-08, 11:07 AM   #2
huangyhg
超级版主
 
huangyhg的头像
 
注册日期: 04-03
帖子: 18592
精华: 36
现金: 249466 标准币
资产: 1080358888 标准币
huangyhg 向着好的方向发展
默认 回复: 当我在其他机器上浏览的时候,发现字体不是设置的字体,字体变大了;而且有表格显示错位了;我的机器的分辨率是800*600,请问在其他高分

用这得到分辨率
GetSystemMetrics()
参数:
SM_CXSCREEN,
SM_CYSCREENTop

2 楼kwiner(ak.net)回复于 2002-11-18 10:49:00 得分 15

:程序中得到显示器的分辨率、刷新率与色深


char Current[100];
DEVMODE dm;
dm.dmSize=sizeof(DEVMODE);
::EnumDisplaySettings(NULL,ENUM_CURRENT_SETTINGS,&dm);
wsprintf(Current,"%s at %dx%d %dbpp %dHz",
dm.dmDeviceName,
dm.dmPelsWidth,
dm.dmPelsHeight,
dm.dmBitsPerPel,
dm.dmDisplayFrequency);

MessageBox(Current,"",MB_OK);


Top

3 楼blue3tooth(蓝牙)回复于 2002-11-19 12:19:54 得分 0

如何获得系统当前正在使用的字体(小字体还是大字体)?Top

4 楼blue3tooth(蓝牙)回复于 2002-11-21 08:55:42 得分 0

如何获的系統字型設定值plxs,请各位高手赐教Top

5 楼daniceexiedong(danice)回复于 2002-11-21 09:31:17 得分 0

只知道使用GetSystemMetrics()可以获得系统分辨率,怎样获得字体就不知道了Top

6 楼blue3tooth(蓝牙)回复于 2002-11-22 09:30:35 得分 0

以上问题我已解决方法是:
HDC DC;
DC=::GetDC(NULL);
if(GetDeviceCaps(DC,LOGPIXELSX)<=96)
FontBigSizeFlag=false; //small
else
FontBigSizeFlag=true; //large
::ReleaseDC(NULL,DC);
huangyhg离线中   回复时引用此帖