Страница: 1 | 2 |
Вопрос: Как сделать чтобы форма загружалась плавно?
Добавлено: 24.06.07 13:56
Автор вопроса: GeniX | Web-сайт:
Как сделать чтобы форма загружалась и выгружалась плавно? Надеюсь на вашу помощь.
Ответы
Всего ответов: 17
Номер ответа: 1
Автор ответа:
Alexandrus
ICQ: 496782368
Вопросов: 18
Ответов: 312
Web-сайт:
Профиль | | #1
Добавлено: 24.06.07 14:44
Плавно-это как?
Номер ответа: 2
Автор ответа:
Боцман
ICQ: 295725312
Вопросов: 53
Ответов: 830
Web-сайт:
Профиль | | #2
Добавлено: 24.06.07 15:24
Никита! Ну ты крут, в 3 месяца от роду изучать VB, и учится в 9 классе...
Наверно ты имел ввиду что то подобное.
Private Declare Sub Sleep Lib "kernel32" _
 ByVal lMilliseconds As Long)
Private Sub Form_Load()
Call alpha(Me.hwnd, 1)
Timer1.Interval = 1
End Sub
Private Sub Timer1_Timer()
Dim i As Long
For i = 1 To 250
Call alpha(Me.hwnd, i)
Sleep 1
i = i + 1
Next i
Timer1.Enabled = False
End Sub
В модуле
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 Const GWL_STYLE = (-16)
Private Const GWL_EXSTYLE = (-20)
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 WS_EX_LAYERED = &H80000
Sub alpha(Hwnds As Long, vals As Long)
If vals < 254 Then
Dim lStyle As Long
lStyle = GetWindowLong(Hwnds, GWL_EXSTYLE)
lStyle = lStyle Or WS_EX_LAYERED
SetWindowLong Hwnds, GWL_EXSTYLE, lStyle
SetLayeredWindowAttributes Hwnds, 0, vals, LWA_ALPHA
Else 'â ëþáîì äðóãîì ñëó÷àå
SetWindowLong Hwnds, GWL_EXSTYLE, 0
End If
End Sub
Номер ответа: 3
Автор ответа:
GeniX
ICQ: 418811267
Вопросов: 40
Ответов: 243
Web-сайт:
Профиль | | #3
Добавлено: 24.06.07 16:11
Мне 14 лет, и компьютер у меня полтора года, а 3 месяца я vb изучаю. Ты похоже неправильно что-то понял. За ответ спасибо.
Номер ответа: 4
Автор ответа:
GeniX
ICQ: 418811267
Вопросов: 40
Ответов: 243
Web-сайт:
Профиль | | #4
Добавлено: 24.06.07 16:23
Извините, перепутал дату в профиле.
Номер ответа: 5
Автор ответа:
KreAtoR
Вопросов: 120
Ответов: 438
Профиль | | #5
Добавлено: 25.06.07 10:15
Вещь!!! а есть возможность чтоб форма и выгружалась тоже плавно. так как у меня тока загружается плавно
Номер ответа: 6
Автор ответа:
KreAtoR
Вопросов: 120
Ответов: 438
Профиль | | #6
Добавлено: 25.06.07 10:17
круто!!!! окно еще и прозрачным делать можно!!!!
Номер ответа: 7
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #7
Добавлено: 25.06.07 10:58
KreAtoR, поздравляю с открытием Много всего можно..
Номер ответа: 8
Автор ответа:
someone
Вопросов: 215
Ответов: 1596
Web-сайт:
Профиль | | #8
Добавлено: 25.06.07 11:50
Пользуйтесь SetWindowAlpha (или как-то так) и таймерами.
Номер ответа: 9
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #9
Добавлено: 25.06.07 16:45
SetLayeredWindowAttributes
Номер ответа: 10
Автор ответа:
Боцман
ICQ: 295725312
Вопросов: 53
Ответов: 830
Web-сайт:
Профиль | | #10
Добавлено: 25.06.07 22:26
KreAtoR кинь на форму Scroll1 назначь минимум 255, Mex=0 и код
Балуйся.
Номер ответа: 11
Автор ответа:
KreAtoR
Вопросов: 120
Ответов: 438
Профиль | | #11
Добавлено: 26.06.07 10:28
Офигенно, я и не думал, что такое можно в бейсике сделать!!!!!
тока понять одного не могу. чем прозрачней окно, тем тяжелей его с места на место двигать. виснуть начинает или мышу перетащишь, а окно только следом тащится!!!! как это можно убрать
Номер ответа: 12
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #12
Добавлено: 26.06.07 11:28
К сожалению никак. Это тормоза прорисовки. Видно компьютер медленно пашет (слабый проц или видео или вся система зас%%на мусором). Чуть быстрее может получиться если ты форму сделаешь меньше размером. Да и ещё можешь отключить прорисовку формы во время перетаскивания, тогда во время перетаскивания форма будет видна в виде рамки. Отключать прорисовку вручную СвойстваЭкрана-Оформление-Эффекты-Отображать содержимое окна при перетаскивании.
Номер ответа: 13
Автор ответа:
KreAtoR
Вопросов: 120
Ответов: 438
Профиль | | #13
Добавлено: 26.06.07 12:09
хм, можешь тоже самое на английском. а то у меня немецкий бэйсик и я не могу найти где это
Номер ответа: 14
Автор ответа:
-АлександР-
Вопросов: 55
Ответов: 1008
Web-сайт:
Профиль | | #14
Добавлено: 26.06.07 12:16
Номер ответа: 15
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #15
Добавлено: 26.06.07 12:19