PictureBoxに printで任意の場所に、可変の文字数の字を書きます。
書いた字の後ろだけ、バックカラーを変更したいです。
どうすれば、良いでしょうか?
文字を書いた位置の範囲を取得して、Line メソッドで塗りつぶしの四角形を描画すればいいのでは。
手抜きのコード
何をしているかはご自分で調べてください。
Private Sub Command1_Click()
Dim th As Long
Dim tw As Long
With Picture1
tw = .TextWidth("花ちゃん")
th = .TextHeight("花ちゃん")
.FontSize = 9
.AutoRedraw = True
Picture1.Line (80, 80)-(80 - 20 + tw + 40, 80 + th + 20), QBColor(14), BF
.CurrentX = 100
.CurrentY = 100
Picture1.Print "花ちゃん"
.Refresh
End With
End Sub
ツイート | ![]() |