powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как реализовать уголок ресайза?
7 сообщений из 7, страница 1 из 1
Как реализовать уголок ресайза?
    #33852660
Фотография Danilo K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как программно реализовать уголок ресайза
который находится в правом нижнем углу формы, обычно на статусбаре.
Если на форме разместить статусбар, то такой уголок будет изменять размеры
родительской формы.
Я хочу реализовать собственный статусбар но с таким же уголком.
...
Рейтинг: 0 / 0
Как реализовать уголок ресайза?
    #33854885
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тебе ТОЛЬКО уголок нужен, или:
-изменять размеры формы можно с любой стороны,
-тебе нужно отслеживать изменение размеров формы.
...
Рейтинг: 0 / 0
Как реализовать уголок ресайза?
    #33854982
Фотография Danilo K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AklinТебе ТОЛЬКО уголок нужен, или:
-изменять размеры формы можно с любой стороны,
-тебе нужно отслеживать изменение размеров формы.
Такой уголок удобен тем, что за него легко "ухватиться" и потом, манипулируя мышью, изменять размер формы.
Т.е. фактически мне нужна область, при нажатии на которую будет изменяться размер родительской формы.
...
Рейтинг: 0 / 0
Как реализовать уголок ресайза?
    #33855563
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) тебе нужна область только:
-маленькая (где-то 200*200 твипов)
-только в нижнем правом углу.
2) чем не устраивает форма (тип 2, короче)

Вообще-то можно сделать собственный ActiveX и вполне номально будет смотреться. У мея правда пока как-то криво получилось, но работает.
...
Рейтинг: 0 / 0
Как реализовать уголок ресайза?
    #33855731
Фотография Danilo K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aklin
У мея правда пока как-то криво получилось, но работает.
Таг а каг? Какие ты функции используешь?
Я как-то видел пример - там были апишные функции, только никак не могу его найти.
...
Рейтинг: 0 / 0
Как реализовать уголок ресайза?
    #33856000
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://gip.fatal.ru/code/vb/task.zip

это еще ничего, а вот видел бы ты, как я TAB (клавишу) описывал для кнопки: чтобы по табу фокус переходил на другие кнопки...

http://gip.fatal.ru/code/vb/capl.zip (см. функцию Tabbing() )
...
Рейтинг: 0 / 0
Как реализовать уголок ресайза?
    #33856530
Фотография Danilo K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aklin http://gip.fatal.ru/code/vb/task.zip
это еще ничего...
Спасибо! Этот пример натолкнул меня на мысль и я раздуплил, как
сделать все грамотно!
У тебя реализовано, впринципе тоже не плохо, но не "по-виндовски" )

Вот как надо было (может куму-нидь понадобится):

Размещаем на форме PictureBox под именем "Pic"
В форму - код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Private Declare Function ReleaseCapture Lib "user32" () As Long
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 Const WM_NCLBUTTONDOWN = &HA1
Private Const HTBOTTOMRIGHT =  17 

Private Sub Pic_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    '  Снимает текущий захват мыши
    ReleaseCapture
    '  Посылает сообщение, окну (Me.hwnd) какбудто левая кнопка мыши (WM_NCLBUTTONDOWN)
    '  опущена на нижний правый (HTBOTTOMRIGHT) угол окна
    SendMessage Me.hwnd, WM_NCLBUTTONDOWN, HTBOTTOMRIGHT,  0 
End Sub
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как реализовать уголок ресайза?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]