我用了一个控件,flatstyle
(下载地址:http://yayx.fykj.com/delphi/vcl_flatstyle.zip安装,请直接打开那个dpk文件)
有一个控件:flatlistbox我想让他滚动,但然不是用move,那时移动数据,就象在listbox中用SendMessage(ListBox1.Handle,WM_VSCROLL,SB_LINEDOWN,0)一样,可是在flatlistbox中就是不起作用!
用谁能帮一下,如果成功的话400分!

解决方案 »

  1.   


    i think i can do:)
      

  2.   

    修改TFlatListBoxUnit单元!
    1、在public段中加入:
        procedure Scroll(AScrollType: TScrollType);2、Scroll的实现:
    procedure TFlatListBox.Scroll(AScrollType: TScrollType);
    begin
      ScrollType := AScrollType;  if AScrollType = up then
      begin
        if (firstItem - 1) < 0 then firstItem := 0
        else Dec(firstItem);
      end
      else
        if firstItem + maxItems + 1 <= FItems.Count then Inc(firstItem);  SetFocus;
      Invalidate;
    end;调用方法:
    procedure TForm1.Button1OnClick(Sender: TObject);
    begin
       FlatListBox1.Scroll(Up);//向上
    end;procedure TForm1.Button2OnClick(Sender: TObject);
    begin
       FlatListBox1.Scroll(Down);//向下
    end;
      

  3.   

    补充:在调用的时候uses FlatUtilitys;
      

  4.   

    procedure Scroll(AScrollType: TScrollType);是插入在TListBoxUnit的public段里吗?为什么使用FlatListBox1.Scroll提示错误?
    能把修改过的几个文件发给我吗?[email protected]