1、如果我用鼠标在这个picture上移动,那么肯定会触发它的mousemove,如果我先用鼠标点击这个picture然后开始移动,就是拖动这个picture,会不会触发mousemove事件?
2、当触发mousemove后里边有几个参数,其中x,y分别是当前的横纵坐标,当我点击picturebox并开始拖动的时候这两个参数会不会发生变化?我的程序是这样的,当点击picturebox时用mousedown记录下当前的x,y值,不松开鼠标并继续拖动picturebox到另一个位置,可我却发现这个picturebox的x,y值发生了变化,按理说这个x,y是picturebox内部的一个坐标值,当我拖动它的时候鼠标在其内部并没有发生位置上的变化,那么X,Y为什么会发生改变?
2、当触发mousemove后里边有几个参数,其中x,y分别是当前的横纵坐标,当我点击picturebox并开始拖动的时候这两个参数会不会发生变化?我的程序是这样的,当点击picturebox时用mousedown记录下当前的x,y值,不松开鼠标并继续拖动picturebox到另一个位置,可我却发现这个picturebox的x,y值发生了变化,按理说这个x,y是picturebox内部的一个坐标值,当我拖动它的时候鼠标在其内部并没有发生位置上的变化,那么X,Y为什么会发生改变?
解决方案 »
- 看见一段很恶搞的QQ签名
- 如何实现和屏保一样的贝塞尔曲线
- 请问:如何实现在脱盘图标上显示浮动气泡提示字符的信息,这个功能如何现实呢?
- setup factory 打包数据库时的问题!!!
- 如何用语句备份和恢复SQL2000中的几个表,注意,不是整个库!!
- 这两个句子有什么分别吗?
- 请问几个打包工具的使用方法!(installshield、installbuilder、installfactory、wise)
- 请给我一个在线升级的例子。。。。
- 110:关于Rnd的问题?
- techfantasy来领分!(2)
- VB中是否能够调用mfc dll?
- 请问如何打开一个任意位置的文本文件?????????????
有改变才能拖动,先改变后拖动。picture1_mousedown
if button=1 then
cx=x:cy=ypicture1_mousemove
if button=1 then
move .left+x-cx, .top+y-cy
cx是记录下的坐标,X是当前坐标?帮我讲一下?
对了,form的度量单位一定要跟picturebox 的一样`
给你一个简单办法:
Option Explicit
'----==== Drag Me Declarations ====----
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function ReleaseCapture Lib "user32" () As Long
Private Const HTCAPTION = 2
Private Const WM_NCLBUTTONDOWN = &HA1'----------------------------------------------------------
' Procedure : DragMe
' Purpose : Drag a Control with hWnd
'----------------------------------------------------------
'
Public Sub DragMe(lngHWnd As Long)
ReleaseCapture
SendMessage lngHWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0& 'objName.hWnd
End SubPrivate Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
DragMe Picture1.hWnd
End Sub
所有的图形和 Print 方法,使用容器的坐标系统。例如,那些在图片框里绘制控件的语句,使用的是控件的坐标系统。
一些用来调整窗体大小或移动窗体的语句,用缇来表示窗体的位置和大小。
当创建用来调整窗体大小或移动窗体的代码时,应先检查 Screen 对象的 Height 属性和 Width 属性,以确保窗体在屏幕上大小合适。屏幕的左上角总是(0,0)。任何容器的缺省坐标系统,都是由容器的左上角(0,0)坐标开始。