我是想做一个程序,但想得到所有的字体,求高手指导!
------解决思路----------------------
Public Class Form1
'创建一个公共Graphics用来绘画测试字体,避免反复创建
Dim myg As Graphics
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'公共Graphics指向本窗体新建的Graphics
myg = Me.CreateGraphics
'创建一个字体数组
Dim fontFamilies() As FontFamily
'枚举系统字体
Dim installedFontCollection As New Drawing.Text.InstalledFontCollection()
'系统字体装进字体数组
fontFamilies = installedFontCollection.Families
'字体总数
Dim count As Integer = fontFamilies.Length
'在ComboBox1列出所有字体项
Dim j As Integer
ComboBox1.BeginUpdate()
While j < count
ComboBox1.Items.Add(fontFamilies(j).Name)
j += 1
End While
ComboBox1.EndUpdate()
End Sub
'当ComboBox1改变选项的时候
Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
'MessageBox.Show(ComboBox1.GetItemText(ComboBox1.SelectedItem))
'创建选中字体
Dim fontFamily As New FontFamily(ComboBox1.GetItemText(ComboBox1.SelectedItem))
Dim font As New Font( _
fontFamily, _
24, _
FontStyle.Regular, _
GraphicsUnit.Point)
'规定一个绘画边界
Dim rectF As New RectangleF(20, 20, Me.Width - 20, Me.Height - 20)
'创建一黑色笔刷
Dim solidBrush As New SolidBrush(Color.Black)
'清空图像
myg.Clear(Me.BackColor)
'绘制出字体
myg.DrawString("测试字体 My Font", font, solidBrush, rectF)
End Sub
End Class
新建一个窗体项目,在Form1设计器中拉一个ComboBox
在Form1代码用上面代码替换