基于对话框的RichEdit控件如何设置行距
我做了一个基于对话框的程序需要对文字做一定的处理,采用的是RichEdit控件,我想要设置文字的行距,我已经将RichEdit升级为RichEdit2.0了,但是采用下面的代码就是没有变化,请高手予以指点,在线等待
PARAFORMAT2 pf2;
pf2.cbSize = sizeof(PARAFORMAT2);
pf2.dwMask = PFM_LINESPACING;
pf2.dyLineSpacing = 400;
pf2.bLineSpacingRule = 4;
m_richedit.SetParaFormat(pf2);
[解决办法]
bLineSpacingRule
Type of line spacing. To use this member, set the PFM_SPACEAFTER flag in the dwMask member.
[解决办法]
SetParaFormat是设置当前段落的格式,你可以在SetParaFormat之前SetSel(0, -1);
[解决办法]
行距要设大一些,默认字体高度小于行距时行距是不生效的,注意行距的单位不是像素
[解决办法]
不好意思,没仔细看。
GetRichEditCtrl().SetSel(0,GetRichEditCtrl().GetTextLength()); CMainFrame * pMain = (CMainFrame*)AfxGetMainWnd(); int pos = pMain->m_imgedit->m_slider.GetPos(); PARAFORMAT2 pf; ZeroMemory(&pf, sizeof(pf)); pf.cbSize = sizeof(PARAFORMAT2); pf.dwMask|=PFM_LINESPACING; pf.bLineSpacingRule =4; pf.dyLineSpacing = pos; GetRichEditCtrl().SetParaFormat(pf);