Страница: 1 |
Страница: 1 |
Вопрос: Как сделать
Добавлено: 18.03.07 15:01
Автор вопроса: noname_kazan
Как сделать такую область что бы можно было бы за неё перетаскивать программу ??
Ответы
Всего ответов: 3
Номер ответа: 1
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #1
Добавлено: 18.03.07 15:08
Посмотри в примерах
Номер ответа: 2
Автор ответа:
Stars
Вопросов: 41
Ответов: 239
Профиль | | #2
Добавлено: 18.03.07 15:59
если правильно понял вопрос то так
Const WM_NCLBUTTONDOWN = &HA1
Const HTCAPTION = 2
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 Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Call ReleaseCapture
Call SendMessage(Me.hWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&
End Sub
Номер ответа: 3
Автор ответа:
Боцман
ICQ: 295725312
Вопросов: 53
Ответов: 830
Web-сайт:
Профиль | | #3
Добавлено: 18.03.07 16:53
Stars так это как раз из примеров.
Можно и так;
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 Function DoDrag(TheForm As Form)
If TheForm.WindowState <> vbMaximized Then 'если форма не на весь экран, тогда тащим
ReleaseCapture
SendMessage TheForm.hwnd, &HA1, 2, 0&
End If
End Function
Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
DoDrag Me
End Sub
Private Sub Label1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
DoDrag Me
End Sub