поменять форму у формы
Как поменять форму у формы например: сделать полу квадратной или круглой.
[COLOR=green]А полу квадратной это КАК![/COLOR]
__________
Элвис жив!
извиняюсь у модератора Cutty Sark
Но http://a-ram.narod.ru/programming/vb6/pathdraw.html
Там это!
Private Declare Function SelectClipPath Lib "gdi32" (ByVal hdc As Long, ByVal iMode As Long) As Long
Private Declare Function BeginPath Lib "gdi32" (ByVal hdc As Long) As Long
Private Declare Function EndPath Lib "gdi32" (ByVal hdc As Long) As Long
Private Declare Function PathToRegion Lib "gdi32" (ByVal hdc As Long) As Long
Private Declare Function SetWindowRgn Lib "user32" (ByVal hWnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean) As Long
Private Const RGN_COPY = 5
Private Sub Form_Load()
' Don't forget to set Form.BorderStyle property to None !
Const TXT = " Cool programm" & vbCrLf & " from" & vbCrLf & "Cool Company" & vbCrLf & "CopyLeft by Ark"
Dim hRgn As Long
Font.Name = "Times New Roman"
Font.Bold = True
Font.Size = 60
Width = TextWidth(TXT)
Height = TextHeight(TXT)
BeginPath hdc
CurrentX = 0
CurrentY = 0
Print TXT
' Здесь вместо текста можно рисовать фигуры
EndPath hdc
hRgn = PathToRegion(hdc)
SetWindowRgn hWnd, hRgn, False
'Hачинаем фантазировать с формой. Можно так
Picture = LoadPicture("c:\windows\облака.bmp")
' А можно так
' dclr = 256 / (TextHeight(TXT) / 30)
' clr = 0
' For i = 120 To 120 + TextHeight(TXT) Step 30
' Line (0, i)-Step(5000, 0), RGB(0, 0, clr)
' clr = clr + dclr
' Next i
' Можно дать форме градиентную заливку и т.д.
' Двигаем к центру, а можно в таймере крутить
Move (Screen.Width - Width) / 2, (Screen.Height - Height) / 2
End Sub
Напиши РАБОТАЕТ?
__________
Элвис жив!
Private Declare Function SetWindowLongA Lib "user32" (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
Const LWA_COLORKEY = &H1
Const LWA_ALPHA = &H2
Const GWL_EXSTYLE = (-20)
Const WS_EX_LAYERED = &H80000
Private Sub Form_Load()
SetWindowLongA Me.hwnd, GWL_EXSTYLE, WS_EX_LAYERED
SetLayeredWindowAttributes Me.hwnd, vbWhite, 0, LWA_COLORKEY
Form1.Picture = LoadPicture(путь к картинке)
End Sub
При этом картинка не должна содиржать указанный alpha цвет. В данном случае vbWhite
Обьясню всё подробней по мылу. Пиши...