Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут
закрыты.
Читайте
требования к создаваемым темам.
-
A.A.Z.
-
- Член-корреспондент академии VBStreets
-
-
- Сообщения: 3035
- Зарегистрирован: 30.06.2003 (Пн) 13:38
-
A.A.Z. » 15.09.2003 (Пн) 17:44
Сабж. Например, как здесь:
Нет меня больше
-
Tarik
-
- Агент Системы
-
-
- Сообщения: 1222
- Зарегистрирован: 03.01.2003 (Пт) 16:05
- Откуда: Москва
-
Tarik » 15.09.2003 (Пн) 21:59
В General:
- Код: Выделить всё
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
В процедуре:
- Код: Выделить всё
'Включаем режим
SetWindowPos Me.hWnd, -1, _
Me.Left / Screen.TwipsPerPixelX, _
Me.Top / Screen.TwipsPerPixelY, _
Me.Width / Screen.TwipsPerPixelX, _
Me.Height / Screen.TwipsPerPixelY, _
&H10 Or &H40
'Выключаем режим
SetWindowPos Me.hWnd, -2, _
Me.Left / Screen.TwipsPerPixelX, _
Me.Top / Screen.TwipsPerPixelY, _
Me.Width / Screen.TwipsPerPixelX, _
Me.Height / Screen.TwipsPerPixelY, _
&H10 Or &H40
Ever tried? Ever failed? No matter. Try again! Fail again! Fail better!
-
X-BOND
-
- Реалист
-
-
- Сообщения: 944
- Зарегистрирован: 19.08.2002 (Пн) 11:44
- Откуда: Ukraine
X-BOND » 16.09.2003 (Вт) 17:41
Можно преспокойно заменить всякие
Me.Left / Screen.TwipsPerPixelX на
0
-
A.A.Z.
-
- Член-корреспондент академии VBStreets
-
-
- Сообщения: 3035
- Зарегистрирован: 30.06.2003 (Пн) 13:38
-
A.A.Z. » 16.09.2003 (Вт) 20:19
Спасибо Tarik'у за код!
2 RayShade:
Чё-то я не понял, можно поподробнее? Где это ставить?
Нет меня больше
-
Tarik
-
- Агент Системы
-
-
- Сообщения: 1222
- Зарегистрирован: 03.01.2003 (Пт) 16:05
- Откуда: Москва
-
Tarik » 16.09.2003 (Вт) 21:20
2A.A.Z.: Пожалуйста
2RayShade: Это в BorderStyle что ли? Пробовал - не помогает.
Ever tried? Ever failed? No matter. Try again! Fail again! Fail better!
-
Amed
-
- Алфизик
-
-
- Сообщения: 5346
- Зарегистрирован: 09.03.2003 (Вс) 9:26
-
Amed » 17.09.2003 (Ср) 17:45
Мне кажется, что RayShade имел в виду
внешний вид toolwindow окна...
А код Tarik'а так же необходим
-
Shurik90
-
- Обычный пользователь
-
-
- Сообщения: 84
- Зарегистрирован: 15.06.2003 (Вс) 23:49
Shurik90 » 30.09.2003 (Вт) 15:24
Я пользуюсь вот таким кодом:
Декларация функции:
- Код: Выделить всё
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)
Процедура:
- Код: Выделить всё
Private Sub AlwaysOnTop()
Const NoResize = &H1, NoMove = &H2
SetWindowPos Me.hWnd, -1, 0, 0, 0, 0, NoResize Or NoMove
End Sub
А потом только позвать процедуру:
- Код: Выделить всё
Private Sub Form_Load()
Call AlwaysOnTop
End Sub
Надеюсь поможет.[/code]
-
A.A.Z.
-
- Член-корреспондент академии VBStreets
-
-
- Сообщения: 3035
- Зарегистрирован: 30.06.2003 (Пн) 13:38
-
A.A.Z. » 30.09.2003 (Вт) 23:10
2 Shurik90:
Да, твой код тоже работает. Спасибо
Нет меня больше
-
Shurik90
-
- Обычный пользователь
-
-
- Сообщения: 84
- Зарегистрирован: 15.06.2003 (Вс) 23:49
Shurik90 » 01.10.2003 (Ср) 0:36
Не за что. Просто он короткий и понятный.
Вернуться в Visual Basic 1–6
Кто сейчас на конференции
Сейчас этот форум просматривают: Yandex-бот и гости: 103