龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > C/C++开发 >

TRichEdit右键滚屏代码

时间:2009-12-22 15:42来源:未知 作者:admin 点击:
分享到:
void __fastcall TMainForm::RichEditMouseMove(TObject *Sender,TShiftState Shift, int X, int Y) { if(RightButtonFlag) { if(RightY>(Y+8)) { RightY=Y; SendMessage(RichEdit->Handle, EM_SCROLL, SB_LINEDOWN, 0); } else if(RightY { RightY=Y; SendMe

  void __fastcall TMainForm::RichEditMouseMove(TObject *Sender,TShiftState Shift, int X, int Y)

  {

  if(RightButtonFlag)

   {

   if(RightY>(Y+8))

   {

   RightY=Y;

   SendMessage(RichEdit->Handle, EM_SCROLL, SB_LINEDOWN, 0);

   }

   else if(RightY<(Y-8))

   {

   RightY=Y;

   SendMessage(RichEdit->Handle, EM_SCROLL, SB_LINEUP, 0);

   }

   RichEditDragFlag=true;

   }

  }

  //---------------------------------------------------------------------------

  void __fastcall TMainForm::RichEditMouseDown(TObject *Sender,TMouseButton Button, TShiftState Shift, int X, int Y)

  {

  if(Button==mbRight)

   {

   RightButtonFlag=true;

   Screen->Cursor=crHandPoint;

   RightX=X;

   RightY=Y;

   SetCapture(RichEdit->Handle);

   }

  else

   RightButtonFlag=false;

  }

  //---------------------------------------------------------------------------

  void __fastcall TMainForm::RichEditMouseUp(TObject *Sender,TMouseButton Button, TShiftState Shift, int X, int Y)

  {

  if(RightButtonFlag)

   ReleaseCapture();

  if(RichEditDragFlag)

   {

   RightButtonFlag=false;

   RichEditDragFlag=false;

   Screen->Cursor=crDefault;

   RichEdit->PopupMenu=NULL;

   }

  else

   {

   RichEdit->PopupMenu=RichEditPopupMenu;

   }

  }

  

精彩图集

赞助商链接