Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Basic / VBA


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Basic/VBA

Выпуск № 44
от 08.04.2005, 23:10

Администратор:Калашников О.А.
В номере:Вопросов: 1, Ответов: 3


Вопрос № 19157: Уважаемые эксперты как в VB возможно перетаскивать окна за форму? ...

Вопрос № 19157
Уважаемые эксперты как в VB возможно перетаскивать окна за форму?
Отправлен: 03.04.2005, 11:29
Вопрос задал: Oleinik D.V (статус: Посетитель)
Всего ответов отправлено: 3

Отвечает: ale2k
Здравствуйте, Oleinik D.V!
Немного не понятен вопрос. Если Ты хочешь чтобы твоя форма была поверх всех остальных, то
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal CX As Long, ByVal CY As Long, ByVal wFlags As Long) As Long
Private Const HWND_TOPMOST = -1
Private Const HWND_NOTOPMOST = -2
Private Sub Command1_Click()
lFlag = HWND_TOPMOST
'lFlag = HWND_NOTOPMOST
SetWindowPos Form1.hwnd, lFlag, Form1.Left / Screen.TwipsPerPixelX, _
Form1.Top / Screen.TwipsPerPixelY, Form1.Width / Screen.TwipsPerPixelX, _
Form1.Height / Screen.TwipsPerPixelY, SWP_NOACTIVATE Or SWP_SHOWWINDOW
End Sub
Если нет, то уточни вопрос.
Ответ отправил: ale2k (статус: 2-ой класс)
Отправлен: 03.04.2005, 12:11
Оценка за ответ: 5
Комментарий оценки:
Немного не тот ответ мне надо чобы зажав мыкой на форме перетаскивать ее в другое место(как за верхнию полоску там где крестик свернуть). Все равно спасибо вам за ответ он мне еще тоже пригодиться т.к я и это тоже хотел спросить а оно вот как вышло. Еще раз спасибо

Отвечает: rusfaq.ru
Здравствуйте, Oleinik D.V!
Для этого используются функции API ReleaseCapture и SendMessage.
Пример на http://mastershome.net.ru/vbfaq/movewindow.rar
Ответ отправил: rusfaq.ru (статус: 3-ий класс)
Отправлен: 03.04.2005, 12:47
Оценка за ответ: 5
Комментарий оценки:
Во все путем все работает спасибо за ссылку

Отвечает: Licvidator
Здравствуйте, Oleinik D.V!

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 Sub ReleaseCapture Lib "User32" ()
Private Const WM_NCLBUTTONDOWN = &HA1
Private Const HTCAPTION = 2
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, x As Single, Y As Single)
Dim ReturnValue As Long
If Button = 1 Then
Call ReleaseCapture
ReturnValue = SendMessage(Me.hwnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&)
End If
End Sub
Ответ отправил: Licvidator (статус: Профессор)
Отправлен: 03.04.2005, 13:06
Оценка за ответ: 5
Комментарий оценки:
Спосибо вам правдо ине уже ответили но у вас вродибы другой котороый мне прислалт. Всеровно большое спасибо


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, RusFAQ.ru, Россия, Москва. Все права защищены.
Идея, дизайн, программирование, авторское право: Калашников О.А.


http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.basicvba
Отписаться

В избранное