玄関へお回り下さい。
プログラム上からフォントを設定する(5個)              (SNo.096)

1.プログラム上からテキストボックスのフォントスタイルを設定
2.現在のスタイルに太字を追加
3.太字/元に戻すを切り替える
4.使用しているフォント名を取得
5.インストールされているフォントの一覧を取得
使用コントロール Button1 〜 Button5  TextBox1 ComboBox1
その他条件 WindowsXP(Vista) Visual Basic 2005(VB2008)
 
1.プログラム上からテキストボックスのフォントスタイルを設定
 
Private Sub Button1_Click(ByVal sender As System.Object, _
                          ByVal e As System.EventArgs) Handles Button1.Click
'フォントスタイルの設定
    'Font コンストラクター (String, Single, FontStyle) 
    'パラメーター
    'familyName(フォント名)
    '新しい Font オブジェクトに対する FontFamily オブジェクトの文字列形式。 
    'emSize(フォントサイズ)
    '新しいフォントの em サイズ (単位はポイント)。 
    'style(フォントスタイル)
    '新しいフォントの FontStyle 。 

    TextBox1.Text = "iiiwww花ちゃん"
  'フォントをMS P明朝 の 12ポイントの 斜体 に設定
    TextBox1.Font = New Font("MS P明朝", 12, FontStyle.Italic)   
End Sub


知れば、どうって事もないのですが、 Font 関係のヘルプを見ていても使用例らしき事は書いていないし、VB6.0 の時のような書き方をすればエラーとなるし、結構上記設定にたどり着くのに苦労したものでした。
VB6.0 のヘルプが最初解りずらかったのですが、.NET のヘルプはもっと解り難くなったように思うのは私だけでしょうか、その内なれれば何とかなるのかも知れませんが。

2.現在のスタイルに太字を追加
 
Private Sub Button2_Click(ByVal sender As System.Object, _
                          ByVal e As System.EventArgs) Handles Button2.Click
'現在のスタイルに太字を追加する
    TextBox1.Font = New Font(TextBox1.Font, TextBox1.Font.Style Or FontStyle.Bold)

    '下記の場合は標準のスタイルでの太字となる
    '   TextBox1.Font = New Font(TextBox1.Font, FontStyle.Bold)   
End Sub
 
3.太字/元に戻すを切り替える
 
Private Sub Button3_Click(ByVal sender As System.Object, _
                          ByVal e As System.EventArgs) Handles Button3.Click
'クリック毎に太字・標準を設定する
    TextBox1.Font = New Font(TextBox1.Font, TextBox1.Font.Style Xor FontStyle.Bold)
End Sub

 
4.使用しているフォント名を取得
 
Private Sub Button4_Click(ByVal sender As System.Object, _
                          ByVal e As System.EventArgs) Handles Button4.Click
'現在の設定フォント名を取得
    Debug.WriteLine(TextBox1.Font.Name)
End Sub

5.インストールされているフォントの一覧を取得
 
Private Sub Button5_Click(ByVal sender As System.Object, _
                          ByVal e As System.EventArgs) Handles Button5.Click
'フォントの一覧を取得
    Dim ff As FontFamily
    For Each ff In System.Drawing.FontFamily.Families
        ComboBox1.Items.Add(ff.Name)
    Next
End Sub






2004/05/18
2005/10/14


VBレスキュー(花ちゃん)
VB.NET2003  VB2005