Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Изменение BorderStyle в Runtime'e

403
07 июля 2007 года
ace lighting
411 / / 05.05.2006
Как изменять свойство BorderStyle при работе программы обычная строчка, типа:

BorderStyle = 4

не приносит желаемого результата!?
257
08 июля 2007 года
kosfiz
1.6K / / 18.09.2005
тебе должен помочь последовательный вызов SetWindowLong и SetWindowPos, подробнее о них смотри в MSDN. например можно так:
Код:
Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Public Const GWL_EXSTYLE = -20
Public Const WS_EX_TOOLWINDOW = 128
Public 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
Public Const SWP_FRAMECHANGED = &H20        '  The frame changed: send WM_NCCALCSIZE
Public Const SWP_NOACTIVATE = &H10
Public Const SWP_NOMOVE = &H2
Public Const SWP_NOSIZE = &H1
Public Const SWP_NOZORDER = &H4

...................................................

Dim i As Long
i = SetWindowLong(Form1.hwnd, GWL_EXSTYLE, WS_EX_TOOLWINDOW)
i = SetWindowPos(Form1.hwnd, 0, 0, 0, 0, 0, SWP_FRAMECHANGED Or SWP_NOACTIVATE Or SWP_NOMOVE Or SWP_NOSIZE Or SWP_NOZORDER)


P.S. хотя может можно как-то проще.
403
08 июля 2007 года
ace lighting
411 / / 05.05.2006
Большое спасибо!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог