图片如下链接:
http://hi.csdn.net/space-2633126-do-album-picid-939337.html代码大概就是:左边的TreeView MouseDown事件中写 TreeView1.BeginDrag(False);右边的ScrollBox DragDrop创建一个 Panel就算是加双缓冲,创建Panel后Update, Refresh, Application.ProcessMessages, Invalidate都不行。请达人指教。谢谢!
http://hi.csdn.net/space-2633126-do-album-picid-939337.html代码大概就是:左边的TreeView MouseDown事件中写 TreeView1.BeginDrag(False);右边的ScrollBox DragDrop创建一个 Panel就算是加双缓冲,创建Panel后Update, Refresh, Application.ProcessMessages, Invalidate都不行。请达人指教。谢谢!
解决方案 »
- 请问怎么让label使用actionlist里的action?
- 帮忙把C++转成delphi 谢谢
- 把分送光!idhttp无法登录网页,好像是被限制
- 希望大家共同努力把CSDN搞得更好
- 算法求解:一个翻牌小游戏
- 全局变量的问题!
- 高分求教:如何设置一个按钮的多行Caption!在线等待
- ADOQuery里查询了一个Database是否存在后就不能关闭表了,总出错.....
- 关于delphi的BDE配置的一个问题
- 我做了一个软件,欢迎大家试用。(是图像方面的)(wyb_star)
- IdTCPServer1Connect这个事件......
- Embarcadero RAD Studio XE2 编译错误问题。
试试看
1 mousedown里加一个标记点击即为true, mouseup里设为false
2 拖动的时候判断下标记,false不处理
感谢你的关注我觉得最奇怪的问题是,为什么在拖动的过程中,TreeView的节点文字经过的路径会变黑色。我看过很多拖动的例子,也没见谁的要在拖动过程中要去刷新source,dest这两个控件。拖动只涉及到主线程,这里只是做一个简单的拖动, 应该不会阻塞界面刷新。
不过我这个程序有点特别的是 左边的treeview是在一个Form上 ,dock在一个panel上,右边也是一个Form,创建在一个panel上。只是存在不是同一个窗体上的拖动。