it posible to change the skin of the form?? including the command button and other tools??
i would like to design a system that much attractive that the ordinary visual design..
could anyone help me.
pleaseeeeee.......
jaasaria

Dani AI

Generated

Yes — a Visual Basic form can be skinned. There are three practical routes: rely on the OS theme for a native look, use a third‑party skinning component to get polished visuals quickly, or build a custom‑drawn UI (most work, most flexible). As noted, an OS‑themed approach keeps controls native; as pointed out, OCX/skin components are a fast way to get custom appearance. The right choice depends on time, target Windows versions, and whether licensing/binaries are acceptable.

For beginners the fastest path is a drop‑in skinning library: it produces polished results with little custom drawing. The tradeoffs are heavier deployment and possible quirks on different Windows builds. The custom route is better for learning and full control: common steps are making the form borderless, painting the background, drawing a custom titlebar and buttons, and owner‑drawing controls that must look different.

Key practical tips and a tiny VB.NET example for the custom route:

  • Use double buffering to avoid flicker.
  • Keep icons and button bitmaps in PNG with alpha for smooth edges.
  • Implement proper hit testing for resize/drag and keyboard accessibility.
  • Test on different DPIs and Windows versions.

Example — simple gradient background and titlebar drag helper (VB.NET):

Protected Overrides Sub OnPaint(e As PaintEventArgs)
    Using b As New Drawing2D.LinearGradientBrush(ClientRectangle, Color.LightBlue, Color.Navy, 90)
        e.Graphics.FillRectangle(b, ClientRectangle)
    End Using
    MyBase.OnPaint(e)
End Sub
<DllImport("user32.dll")>
Private Shared Function ReleaseCapture() As Boolean
End Function
<DllImport("user32.dll")>
Private Shared Function SendMessage(hWnd As IntPtr, Msg As Integer, wParam As Integer, lParam As Integer) As Integer
End Function
Private Const WM_NCLBUTTONDOWN As Integer = &HA1
Private Const HTCAPTION As Integer = 2

Private Sub TitleBar_MouseDown(sender As Object, e As MouseEventArgs) Handles TitleBar.MouseDown
    ReleaseCapture()
    SendMessage(Handle, WM_NCLBUTTONDOWN, HTCAPTION, 0)
End Sub

Troubleshooting notes: enable control double buffering (SetStyle(ControlStyles.OptimizedDoubleBuffer, True)), preserve keyboard/tab order, and keep a fallback to standard controls where behavior must remain predictable. For modern .NET projects, consider moving to WPF when richer styling, animation and DPI handling are required.

Recommended Answers

All 11 Replies

yes u can, use manifest file to make your program like your os skin. so if the program on xp the skin like xp or if the program on the vista os its like vista skin. but you can use ocx file.

i was only a begginer in vb. please help me . more explination pls, on how to do that.
where i can get that..
thxxxxxxx
for the reply

try to look for vbskinner ocx.It helps you tweak your design.There are many tutorials on how to do this.

Hey,You're from the Philippines also eh!

yahhh , im from the phil.

ok i will visit that site..thxx dude.
where you from?? sorry for not visiting your profile..

this is a sample of manifest file :
put this file in a same folder with your exe file

YourProgramName.exe.zip

commented: awesome +1
commented: cool!!:P +1
commented: wow, this file really helps me much... :D +1

i already put my exe file in the same folder. but i dont know what is the exact process.. pleasee be more specific.. and also to the attack .. thxx for help

change the manifest file name as your exe name. when you run the exe file, your program will have a skin like your os.

tnx for the manifest ^^..

Im from Philippines too

thxxxxxx a lot dude.
but by the way can i get the manifest site??

i would like explore more thing on it..

but it's already done..thxxxxxxxxx

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.