我需要在单选按钮选项中加粗文本的一部分
我需要实现此输出,其中“选项 A: ”字体样式为粗体,“面食”只是常规字体样式。单选按钮输出
我试过这段代码,字符串是数据,它没有字体选项
Public Class _1_5_register_event_s2
Private Sub _1_5_register_event_s2_Load(sender As Object, e As EventArgs) Handles Me.Load
Dim optionA As String = "Option A ($0): "
Dim food As String = "Pasta"
optionA = FontStyle.Bold
food = FontStyle.Regular
rb_optionA.Text = optionA & food
End Sub
您可以覆盖单选按钮类。
代码:
班级
Public Class XRadioButton
Inherits RadioButton
Public Sub New()
UseVisualStyleBackColor = False
TextImageRelation = TextImageRelation.ImageAboveText
End Sub
Public Overrides Property Text As String
Get
Return ""
End Get
Set(ByVal value As String)
MyBase.Text = value
End Set
End Property
Public Property LeftText As String
Public Property RightText As String
Protected Overrides Sub OnPaint(ByVal pevent As PaintEventArgs)
MyBase.OnPaint(pevent)
Dim rect As Rectangle = ClientRectangle
rect.Inflate(-5, -5)
Using sf As StringFormat = New StringFormat() With {
.Alignment = StringAlignment.Center,
.LineAlignment = StringAlignment.Far
}
Using brush As Brush = New SolidBrush(ForeColor)
Dim font As Font = New Font(Me.Font, FontStyle.Bold)
pevent.Graphics.DrawString(LeftText, font, brush, rect, sf)
sf.Alignment = StringAlignment.Far
pevent.Graphics.DrawString(RightText, Me.Font, brush, rect, sf)
End Using
End Using
End Sub
End Class
形式
Public Class Form1
Private Sub Form1_Load_1(sender As Object, e As EventArgs) Handles MyBase.Load
Dim button As XRadioButton = New XRadioButton()
button.LeftText = "Hello"
button.RightText = "test"
Me.Controls.Add(button)
End Sub
End Class
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句