Элемент ActiveX должен растягивать форму

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Элемент ActiveX должен растягивать форму

Сообщение hCORe » 05.11.2004 (Пт) 21:52

Я сделал удобный ActiveX строки состояния. У стандартного статус-бара в крайне-правом углу есть область, к которой достаточно подвести мышь, чтобы начать изменение размеров окна.

Визуально я эту штуку повторил:

Изображение

На контроле стоит Image. Как сделать так, чтобы при наведении мыши на Image (MouseMove) поведение было бы таким же, как и у стандартного элемента StatusBar?
Моду создают модоки, а распространяют модозвоны.

xolod
Гуру
Гуру
 
Сообщения: 1162
Зарегистрирован: 15.01.2004 (Чт) 0:42
Откуда: Moscow

Сообщение xolod » 05.11.2004 (Пт) 23:19

Создай статус бар через CreateStatusWindow и измени стиль твоего контрола так:

[code]
Private Const GWL_STYLE = (-16)
Private Const SBARS_SIZEGRIP = &H100

lStyle = lStyle And SBARS_SIZEGRIP

SetWindowLong ХЭНДЛ_КОНТРОЛА, GWL_STYLE, lStyle
[code]

По моему, простой и дружественный метод =)

Если что, пошлю пример..

Constant ERROR_SUCCESS deprecated. I'm so happy.
Программирование и дизайн – http://www.macrointellect.ru

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 06.11.2004 (Сб) 12:43

xolod писал(а):Если что, пошлю пример

Да, если можно 8)

Однако, если честно, мне нужен именно такой метод, как я описал (см. выше). Потому что картинка grip'а должна быть нестандартной (я ее рисую сам)
Моду создают модоки, а распространяют модозвоны.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 06.11.2004 (Сб) 12:47

Думаю, метода тут должна быть такая же, как при таскании формы за любое место - послать ему хиттест по нужной области (только я не знаю, как она называется :) - позырь spy++ WM_NCHITTEST и WM_HITTEST)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

xolod
Гуру
Гуру
 
Сообщения: 1162
Зарегистрирован: 15.01.2004 (Чт) 0:42
Откуда: Moscow

Сообщение xolod » 06.11.2004 (Сб) 14:51

Вот примерчик. А отрисовать свой грид сможешь и в нем, если это очень надо конечно :wink:

Constant ERROR_SUCCESS deprecated. I'm so happy.
Программирование и дизайн – http://www.macrointellect.ru

xolod
Гуру
Гуру
 
Сообщения: 1162
Зарегистрирован: 15.01.2004 (Чт) 0:42
Откуда: Moscow

Сообщение xolod » 06.11.2004 (Сб) 15:20

Ах, да, забыл.. Ему еще сабклассер нужен. Я использую этот..

Constant ERROR_SUCCESS deprecated. I'm so happy.
Программирование и дизайн – http://www.macrointellect.ru


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

    TopList