2.Command1.Caption 等に左揃え・右揃えで文字を表示 |
1.Command1.Caption 等に左揃え・右揃えで文字を表示 2. 3. 4. 5. 6. |
下記プログラムコードに関する補足・注意事項 動作確認:Windows Vista・Windows 7 (32bit) / VB6.0(SP6) Option :[Option Explicit] 参照設定: 使用 API: その他 : : |
1.Command1.Caption 等に左揃え・右揃えで文字を表示 |
Option Explicit 'SampleNo=108 2002.05.21 Private Function fLenA(ByVal ss As String) As Integer fLenA = LenB(StrConv(ss, vbFromUnicode)) End Function Private Function fStrAlignment(ByRef Mystr As String, _ ByVal LenN As Integer, Optional ByVal Mode As Integer = 0) As String '*================================================================= '* Mystr 対象文字列 '* LenN 表示範囲(半角文字換算) '* Mode 1=右揃え 2=中央揃え その他=左揃え '*================================================================= Dim strWkstr As String Dim intSpcN As Integer strWkstr = Trim$(Mystr) '文字列の前後の空白を削除 '文字列が0又は表示範囲より長い文字列は終了 If LenN < 1 Or LenN <= fLenA(strWkstr) Then fStrAlignment = strWkstr Exit Function End If '-1 分は、クリックした時のフォーカス枠分 intSpcN = (LenN - fLenA(strWkstr)) - 1 '表示範囲-文字列の長さ If Mode = 1 Then '右揃え Mystr = String$(intSpcN, " ") & strWkstr ElseIf Mode = 2 Then '中央揃え Mystr = String$(intSpcN \ 2, " ") & strWkstr & _ String$(intSpcN - (intSpcN \ 2), " ") Else '左揃え Mystr = strWkstr & String$(intSpcN, " ") '文字列の右に空白 End If fStrAlignment = Mystr End Function Private Sub Command1_Click() 'Alignment の設定 Dim strMyString As String strMyString = "VisualBasic花ちゃん" '最大表示文字数(半角)=(Command2.Width - 115(余白))/120(1文字のサイズ) 'MS ゴシック 12 ポイント = 120 twip Debug.Print (Command2.Width - 115) / 120 '3715-115/120 = 30 Command2.Caption = fStrAlignment(strMyString, 30) '左 Command3.Caption = fStrAlignment(strMyString, 30, 1) '右 Command4.Caption = fStrAlignment(strMyString, 30, 2) '中央 End Sub 上記実行結果 |
2. |
3. |
4. |
5. |
6. |
検索キーワード及びサンプルコードの別名(機能名) |
Command2.Caption 等に左揃え・右揃えで文字を表示 Alignment のない箇所で Alignment の設定 指定文字数の中で(左・中央・右)揃えに表示する コマンドボタンで文字列を左揃え コマンドボタンで文字列を中央揃え コマンドボタンで文字列を右揃え コマンドボタンの Alignment の設定 |