Declare Function ReleaseCapture Lib "user32" () As Long
ReleaseCapture завершает фиксацию мыши для указанного окна. При вызове ReleaseCapture, все сообщения ввода мыши немедленно возвращаются обратно в обычный режим. Функция должна использоваться сразу же, как только вы уже не нуждаетесь в фиксации мыши после вызова SetCapture.
Функция не имеет параметров
' Перемещаем форму за любое место, ' а не только за заголовок ' Вставьте код в Form_MouseMove Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim retval As Long ' возвращаемое значение If Button = 1 Then Call ReleaseCapture ' посылаем сообщение о нажатии левой кнопки мыши ' на заголовке нашей формы retval = SendMessage(Me.hWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&) End If End Sub ' код для Form_Paint Private Sub Form_Paint() Me.Print "Щелкните на форме и удерживая кнопку перетаскивайте форму" End Sub
' Использовать три состояния у элемента CheckBox Private Sub Check1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) Select Case Check1.Value Case Unchecked Check1.Value = Gray Case Gray Check1.Value = Checked Case Checked Check1.Value = Unchecked End Select ReleaseCapture End Sub