如何让FileListBox(文件列表框)有横行拉动的滚动条?
如何让FileListBox有横行拉动的滚动条? 问题点数:100、回复次数:6Top
1 楼Eastunfail(龍子龍孫) (Serpent's Embrace)回复于 2005-08-03 17:56:31 得分 80
xxxx.Perform(LB_SETHORIZONTALEXTENT,1000,0);
看看这样可以不?Top
2 楼hqhhh(枫叶)回复于 2005-08-03 17:57:16 得分 0
好像没有这样的一相属性Top
3 楼Bluce4587(老狼)回复于 2005-08-03 18:23:53 得分 0
无法直接操作,如果文件列表充满,点击"查看菜单"-->"列表"可以显示水平流动条
Top
4 楼peitsiang_gimi(雁南飞)回复于 2005-08-03 18:26:24 得分 10
跟下面这一段差不多,去看看吧!
procedure SetScrollBar(const Sender: TObject);
var
i, MaxWidth: integer;
begin
MaxWidth := 0;
if (Sender is TListBox) then //为TListBox类设置滚动条
begin
for i := 0 to (Sender as TListBox).Items.Count - 1 do
if MaxWidth < (Sender as TListBox).Canvas.TextWidth((Sender as TListBox).Items.Strings[i]) then
MaxWidth := (Sender as TListBox).Canvas.TextWidth((Sender as TListBox).Items.Strings[i]);
SendMessage((Sender as TListBox).Handle, LB_SETHORIZONTALEXTENT, MaxWidth+2, 0);
end
else if (Sender is TCheckListBox) then //为TCheckListBox类设置滚动条
begin
for i := 0 to (Sender as TCheckListBox).Items.Count - 1 do
if MaxWidth < (Sender as TCheckListBox).Canvas.TextWidth((Sender as TCheckListBox).Items.Strings[i]) then
MaxWidth := (Sender as TCheckListBox).Canvas.TextWidth((Sender as TCheckListBox).Items.Strings[i]);
SendMessage((Sender as TCheckListBox).Handle, LB_SETHORIZONTALEXTENT, MaxWidth+2, 0);
end;
end;Top
5 楼sxf_zero(从头再来)回复于 2005-08-04 02:05:33 得分 10
procedure TForm1.FormCreate(Sender: TObject);
begin
ListBox1.ScrollWidth:=ListBox1.Width+1;
end;
把ScrollWidth设置的比Width大就可以了Top
6 楼caozhy(cfx)回复于 2005-08-04 02:06:20 得分 0
SetWindowLongTop
相关问题
- 如何使两个不同的窗口在拉动其中一个窗口的滚动条时同步滚动?
- 在datagrid中怎么实现 拉动水平滚动条时,最左边的一列或两列不滚动
- 请问如何控制javascript中<div>横行滚动条的位置总是在具中的位置
- 我的滚动窗口范围超过70000,但解决不了拉动滚动条超过界限又回到开头的问题
- 如何使两个不同的数据窗口在拉动其中一个数据窗口的滚动条时同步滚动?
- 请问:怎样可以在DataGrid上加一条上下拉动的滚动条?(心急人上)
- 怎么样固定datagird的head部分。 就是拉动滚轴不会滚动上部的head部分
- WebForm中DataGrid能不能在屏幕上规定显示5行,如果显示不完就右边出现滚动条上下拉动显示?
- 怎么才能在拉动下拉滚动条是,使一个表格一直处在网页的顶端(就是和地址栏底部相结)
- 如何滚动“滚动条”?




