VBレスキュー(花ちゃん)
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ各掲示板

リンク元へ戻ります。 コマンドボタン関係のメニュー
1.Command ボタンに関するワンポイントテクニック集
2.Command1.Caption 等に左揃え・右揃えで文字を表示
3.Win32 API を使っての Command ボタンの Caption の Alignment を設定
4.コマンドボタンの装飾(ForeColor / フォント色の設定他)
5. コマンドボタンでダブルクリックイベントを取得する
6.コマンドボタン上でのリピート操作を実装する
7.キーボードフックによるコマンドボタン上での検出できないキーの監視
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.その他、当サイト内に掲載しているコマンドボタンに関するサンプル


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

  上記実行結果
 commandbutton02_01.gif

このページのトップへ移動します。 2. 



このページのトップへ移動します。 3.


このページのトップへ移動します。 4.


このページのトップへ移動します。 5.


このページのトップへ移動します。 6.


このページのトップへ移動します。 検索キーワード及びサンプルコードの別名(機能名)
Command2.Caption 等に左揃え・右揃えで文字を表示 Alignment のない箇所で Alignment の設定 指定文字数の中で(左・中央・右)揃えに表示する 
コマンドボタンで文字列を左揃え コマンドボタンで文字列を中央揃え コマンドボタンで文字列を右揃え
コマンドボタンの Alignment の設定

このページのトップへ移動します。