當前位置:編程學習大全網 - 源碼破解 - vb.net中listbox內容自動換行如何實現

vb.net中listbox內容自動換行如何實現

也不是不可以實現,只不過復雜壹點而已,具體看下面代碼。不過在需要換行等情況下的文本顯示,還是建議用RichTextBox開啟只讀屬性比較省心、比較合適。

Private?Sub?AutoNextRow()

'獲取ListBox行集合文本

Dim?length?As?Integer?=?(ListBox1.Items.Count?-?1)

Dim?items(length)?As?String?'行文本數組

For?i?As?Integer?=?0?To?length

items(i)?=?ListBox1.Items(i).ToString

Next

'處理ListBox換行

ListBox1.Items.Clear()?'清空行內容

Using?g?As?Graphics?=?Graphics.FromHwnd(ListBox1.Handle)

Dim?result?As?New?List(Of?Object)

Dim?w?As?Single?=?ListBox1.ClientSize.Width

Dim?sf?As?SizeF,?str?As?StringBuilder

For?Each?s?As?String?In?items

str?=?New?StringBuilder

For?i?As?Integer?=?0?To?(s.Length?-?1)

sf?=?g.MeasureString(str.ToString?&?s(i),?ListBox1.Font)?

If?sf.Width?>?w?Then

result.Add(str.ToString)

str?=?New?StringBuilder

End?If

str.Append(s(i))

If?i?=?s.Length?-?1?Then?result.Add(str.ToString)

Next

Next

ListBox1.Items.AddRange(result.ToArray)?'填充行內容

End?Using

End?Sub

  • 上一篇:lol卡天賦
  • 下一篇:如何批量下載招股說明書
  • copyright 2024編程學習大全網