不想用Memo的ScrollBars滚动,请问有什么方法?
如用Button点击滚动等。

解决方案 »

  1.   

    postmessage(memo1.handle,wm_keydown,0,33);
    postmessage(memo1.handle,wm_keydown,0,34);
      

  2.   

    朋友,你的问题和我一样啊,没有人回答,似乎不能一开始就使用VCL组件,自己用API实现,那样灵活性就大了。
      

  3.   

    能不能把你的要求提的具体一点,看上去不太明白你想要做什么?
    表面上看,你可以用Button的onclick事件实现,也就是在里面写入你想让memo做的事情!
      

  4.   

    MEMO里面有个滚动事件么?向上和向下滚。
      

  5.   

    以前试过,用 SendMessage 吧。消息名好像是 ...Scroll...具体你查一下 Messages 这个单元。可以实现的。
      

  6.   

    有办法的,那就是依靠自己,不能完全依靠别人——Borland公司也不是神仙。
    你在Memo周围(一般是右边和下边)放两个TScrollBar组件,下面以下方的ScrollBar1为例:
    假如你有一个Button,按下时需要实现滚动条向右滑动的效果,那么可以这样:
    procedure TForm.ButtonClick(Sender: TObject);
    begin
      SendMessage(Handle, WM_HSCROLL, SB_LINELEFT, ScrollBar1.Handle);
    end;
      

  7.   

    刚才发现了一种好的方法,简单使用,经过测试,那就是,呵呵,直接:
    SendMessage(Memo.Handle, LB_SetHorizontalExtent, 500, longint(0));
      

  8.   

    SendMessage(Memo1.Handle,WM_KEYDOWN,VK_PRIOR,0);
    SendMessage(Memo1.Handle,WM_KEYDOWN,VK_NEXT,0);
      

  9.   

    楼主,真是不好意思,我测试的时候使用的是TListBox组件,TMemo组件我没有测试过。刚才测试了一下,发现自己真是瞎说。我的办法还是使用自己的TScrollBar组件,然后随心所欲地实现自己的滚动方式。
    楼上的办法我测试了一下,可以的。
    不过,不知道对于水平滚动条楼上有无对应的消息实现相应的功能?
      

  10.   

    用这个:
    postmessage(memo1.handle,wm_keydown,0,33);
    postmessage(memo1.handle,wm_keydown,0,34);