在一个sdi程序中,view是继承自cformview,然后在view中create了一个编辑框,
并且在onctlcolor()中设置其字体,字体是在view的构造函数中初始化的,语句如下:
CFont m_font;//这在头文件中定义 m_font.CreateFont(15, // nHeight
0, // nWidth
0, // nEscapement
0, // nOrientation
FW_NORMAL, // nWeight
FALSE, // bItalic
FALSE, // bUnderline
0, // cStrikeOut
ANSI_CHARSET, // nCharSet
OUT_DEFAULT_PRECIS, // nOutPrecision
CLIP_DEFAULT_PRECIS, // nClipPrecision
DEFAULT_QUALITY, // nQuality
DEFAULT_PITCH | FF_SWISS, // nPitchAndFamily
"Arial"); // lpszFacename 然后在onctlcolor()函数中pDC->SelectObject(&m_font);选择了所定义的字体。可是这时在程序中
输入字符或汉字时,在编辑框中左右移动光标时,发现光标有时候竟然在一个字符的中间。
然后把pDC->SelectObject(&m_font);封掉后,就不会出现这个问题,请问是字体创建的参数又问题码?
如何使用这种字体而又不会出现这种问题呀?感谢!!
并且在onctlcolor()中设置其字体,字体是在view的构造函数中初始化的,语句如下:
CFont m_font;//这在头文件中定义 m_font.CreateFont(15, // nHeight
0, // nWidth
0, // nEscapement
0, // nOrientation
FW_NORMAL, // nWeight
FALSE, // bItalic
FALSE, // bUnderline
0, // cStrikeOut
ANSI_CHARSET, // nCharSet
OUT_DEFAULT_PRECIS, // nOutPrecision
CLIP_DEFAULT_PRECIS, // nClipPrecision
DEFAULT_QUALITY, // nQuality
DEFAULT_PITCH | FF_SWISS, // nPitchAndFamily
"Arial"); // lpszFacename 然后在onctlcolor()函数中pDC->SelectObject(&m_font);选择了所定义的字体。可是这时在程序中
输入字符或汉字时,在编辑框中左右移动光标时,发现光标有时候竟然在一个字符的中间。
然后把pDC->SelectObject(&m_font);封掉后,就不会出现这个问题,请问是字体创建的参数又问题码?
如何使用这种字体而又不会出现这种问题呀?感谢!!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货