Delphi中如何实现拖曳?

happyZhouL 2000-02-25 02:13:00
在DELPHI,实现的具有拖曳功能的panel,必须先点击一下panel后,才能按下鼠标拖动,
如果直接拖曳则不灵,请教:如何不用先选中,而直接拖曳的办法。
谢谢
...全文
299 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Firing_Sky 2000-02-27
  • 打赏
  • 举报
回复
在Application.onmessage事件中将TreeView的SC_DragMove消息映射为Panel的SC_DragMove消息
happyZhouL 2000-02-25
  • 打赏
  • 举报
回复
如果PANEL中有一个TREEVIEW,如何将他们做为一个整体来拖曳。
谢谢
Firing_Sky 2000-02-25
  • 打赏
  • 举报
回复
试试这段代码

procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
const
SC_DragMove = $F012; { a magic number }begin ReleaseCapture;
panel1.perform(WM_SysCommand, SC_DragMove, 0);
end;
jll 2000-02-25
  • 打赏
  • 举报
回复
我猜:在Panel的MouseEnter事件中加入获得焦点的语句,如:SetFocus

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧