通知
すべてクリア
Topic starter
2000年12月8日 5:33 PM
こんにちわ。
スタティックBox内のテキストの配置
(中央配置とか左端とか)を
文字数によって、変更したいのですが・・。
なにか良い方法があれば教えてください。
2000年12月8日 6:08 PM
文字数に応じてModifyStyle()します。
s がCStringで文字列がすでに入っているとして、
CStatic* pWnd = (CStatic*)GetDlgItem( スタティックのID );
int n = s.GetLength();
if( n < 3 )
{
pWnd->ModifyStyle( SS_CENTER|SS_RIGHT, SS_LEFT );
}
else if( n < 10 )
{
pWnd->ModifyStyle( SS_LEFT|SS_RIGHT, SS_CENTER );
}
else
{
pWnd->ModifyStyle( SS_LEFT|SS_CENTER, SS_RIGHT );
}
pWnd->SetWindowText( s );
これで、3バイト未満は左寄せ、10未満は中央、それ以上は右寄せに
なります。(ただし、文字数ではなくてバイト数です。)