CodeItBetter Programming Another VB Programming Blog

How to Make 3D Controls

Posted on January 5, 2009
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
'Controls - How to Make 3D Controls

Option Explicit
 
'Add a Command Button and a Text Box to your form.

Public Sub ThreeDControl(Ctrl As Control, nBevel%, nSpace%, bInset%)
    PixX% = Screen.TwipsPerPixelX
    PixY% = Screen.TwipsPerPixelY
    With Ctrl
        CTop% = .Top - PixX%
        CLft% = .Left - PixY%
        CRgt% = .Left + .Width
        CBtm% = .Top + .Height
        If bInset% Then
            For I% = nSpace% To (nBevel% + nSpace% - 1)
                AddX% = I% * PixX%
                AddY% = I% * PixY%
                .Parent.Line (CLft% - AddX%, CTop% - AddY%)-(CRgt% + AddX%, CTop% - AddY%), &H808080
                .Parent.Line (CLft% - AddX%, CTop% - AddY%)-(CLft% - AddX%, CBtm% + AddY%), &H808080
                .Parent.Line (CLft% - AddX%, CBtm% + AddY%)-(CRgt% + AddX% + PixX%, CBtm% + AddY%), &HFFFFFF
                .Parent.Line (CRgt% + AddX%, CTop% - AddY%)-(CRgt% + AddX%, CBtm% + AddY%), &HFFFFFF
            Next I
        Else
            For I% = nSpace% To (nBevel% + nSpace% - 1)
                AddX% = I% * PixX%
                AddY% = I% * PixY%
                .Parent.Line (CRgt% + AddX%, CBtm% + AddY%)-(CRgt% + AddX%, CTop% - AddY%), &H808080
                .Parent.Line (CRgt% + AddX%, CBtm% + AddY%)-(CLft% - AddX%, CBtm% + AddY%), &H808080
                .Parent.Line (CRgt% + AddX%, CTop% - AddY%)-(CLft% - AddX% - PixX%, CTop% - AddY%), &HFFFFFF
                .Parent.Line (CLft% - AddX%, CBtm% + AddY%)-(CLft% - AddX%, CTop% - AddY%), &HFFFFFF
            Next I
        End If
    End With
End Sub
 
Private Sub Command1_Click()
    'To Make the Text1 text box control to 3D
    Call ThreeDControl(Text1, 1, 0, True)
End Sub
Filed under: Controls Leave a comment
Comments (0) Trackbacks (0)

No comments yet.


Leave a comment


 

No trackbacks yet.