注册 登录
编程论坛 VC.NET论坛

一个字符串右对齐问题

clever101 发布于 2008-08-19 18:33, 2931 次点击
将几个数字格式化之后插入一个listbox,要求字符要右对齐,我使用了sprintf函数,但是对得还是不齐,代码大致如下:

for(i=m_GraySelVec.size()-1;i>-1;i--)
{
              char szSel[256];
  memset(szSel,'\0',256);
sprintf(szSel,"%5d--%5d:%8d%8d%8d",m_GraySelVec[i].Min,m_GraySelVec[i].Max,GetRValue(m_pPallette[m_ColorIndexVec[i]]),GetGValue(m_pPallette[m_ColorIndexVec[i]]),GetBValue(m_pPallette[m_ColorIndexVec[i]]));

pListBoxPct->InsertString(-1,szSel);
}

效果图如下,图中上面的就是listbox,可以看到第一行和其它行对不齐:


大家有没有更好的字符串对齐的办法呢?  我的编译环境是:VS2005 + sp1, Win XP + sp2.
0 回复
1