Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > Как сделать полупрозрачную форму?


Автор: Им Берзкий 25.7.2003, 12:03
withstupid.gif У меня проблема:нужно сделать форму, которая будет "плавать" по экрану, как привидение. Как это сделать? withstupid.gif

Автор: -Mikle- 26.7.2003, 20:57
В инете целая куча примеров! Набери в поисковике "полупрозрачная форма" и читай скоко хош. Вот пример с одного форума (нашел его за три минуты):
Код
Option Explicit
'Api функции
'Определяет стиль окна
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, _
ByVal nIndex As Long) As Long
'Задать стиль окна
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, _
ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
'Функция прозрачности
Private Declare Function SetLayeredWindowAttributes Lib "user32" (ByVal hWnd As Long, _
ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long

Private Const LWA_COLORKEY = &H1
Private Const LWA_ALPHA = &H2
Private Const GWL_EXSTYLE = (-20)
Private Const WS_EX_LAYERED = &H80000

Private Sub Form_load()
Dim TRANS As Long
TRANS = 160 '(10 до 255)
SetWindowLong hWnd, GWL_EXSTYLE, GetWindowLong(hWnd, GWL_EXSTYLE) Or WS_EX_LAYERED
SetLayeredWindowAttributes hWnd, 0, TRANS, LWA_ALPHA
End Sub


Автор: nicka 28.7.2003, 13:44
ичего она не прозрачная!

Автор: -Mikle- 28.7.2003, 14:09
еще как прозрачная!!! даже красиво! это в 98 не работает...

Автор: nicka 29.7.2003, 14:52
А кто сказал, что у меня 98?
У меня XP между прочим!

Автор: nicka 29.7.2003, 14:55
Нет не прозрачная
Может что еще надо сделать кроме этого кода
Ну очень хочеться на полупрозрачную форму поглазеть!

Автор: -Mikle- 30.7.2003, 20:13
Нет. Я просто копирую указанный код в пустую форму и жму Ф5. Очень красиво, полупрозрачно смотрится... :-)

Автор: nicka 31.7.2003, 12:49
Странно, почему тогда у меня не выходит!
МОжет мне кто объяснить?

Автор: Alles 1.8.2003, 04:42
Ты в чем делаешь ? если в Access то у тебя ни чего не выйдет ошибки не будет , но форма полупрозрачной не будет , а вот если в чистом VB ... вот там все работает нормально !!!!

Автор: nicka 1.8.2003, 12:38
Ааааа!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)