Delphi使ListBox下拉时出现水平滚动条?

2025-02-24 21:32:43
推荐回答(2个)
回答1:

在你的Form的OnCreate事宜中添加以下代码: procedure TForm1.FormCreate(Sender: TObject); var i, MaxWidth: integer; begin for i := 0 to ListBox1.Items.Count - 1 do MaxWidth := 0; if MaxWidth < ListBox1.Canvas.TextWidth(ListBox1.Items.Strings[i]) then MaxWidth := ListBox1.Canvas.TextWidth(ListBox1.Items.Strings[i]); SendMessage(ListBox1.Handle, LB_SETHORIZONTALEXTENT, MaxWidth+2, 0); end; 用此办法,包你成功!

回答2:

当Item内容较长时,标准listBox中跨越lisBox.width的长度看不到,若何决? 试过sendmessag+LB_SETHORIZONTALEXTENT 但无效(对ComBox有效).