• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Tạo Aero Glass cho form

Các thủ thuật liên quan đến ứng dụng, biểu mẫu và control

Moderators: tungcan5diop, QUANITGROBEST

User avatar
vo_minhdat2007
Quản trị
Quản trị
Posts: 2227
Joined: Sun 17/07/2005 1:40 am
Has thanked: 13 times
Been thanked: 87 times
Contact:

Tạo Aero Glass cho form

Postby vo_minhdat2007 » Thu 13/08/2009 8:58 pm

Thủ thuật: Tạo Aero Glass cho form
Tác giả: Sưu tầm
Mô tả: Tạo form trong suốt dạng Aero, chỉ dùng trên Windows Vista và 7, không báo lỗi nhưng không tác dụng nếu chạy chế độ Basic hoặc trên Windows XP



Untitled.jpg


Trước tiên, Import namespace này :

Code: Select all

  1. Imports System.Runtime.InteropServices


Khai báo :

Code: Select all

  1.    <StructLayout(LayoutKind.Sequential)> _
  2.     Public Structure MARGINS
  3.         Public cxLeftWidth As Integer
  4.         Public cxRightWidth As Integer
  5.         Public cyTopHeight As Integer
  6.         Public cyButtomheight As Integer
  7.     End Structure
  8.  
  9.     <DllImport("dwmapi.dll")> _
  10.     Public Shared Function DwmExtendFrameIntoClientArea(ByVal hWnd As IntPtr, ByRef pMarinset As MARGINS) As Integer
  11.     End Function


Sử dụng với code mẫu :

Code: Select all

  1. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  2.         On Error Resume Next
  3.         Dim margins As MARGINS = New MARGINS
  4.         margins.cxLeftWidth = -1
  5.         margins.cxRightWidth = -1
  6.         margins.cyTopHeight = -1
  7.         margins.cyButtomheight = -1
  8.         Dim hwnd As IntPtr = Me.Handle
  9.         Dim result As Integer = DwmExtendFrameIntoClientArea(hwnd, margins)
  10.     End Sub


Trong đó, -1 có nghĩa là sẽ áp dụng hết form, bạn có thể sửa thành số khác nếu muốn chỉ áp dụng 1 phần nào đó (như Windows Media Player của Windows Vista). VD với Bottom = 5, và các số liệu khác là 0 :

Untitled.jpg


Chú ý : Chỉ trong suốt tốt nhất với phần màu đen, hãy đổi BackColor thành Black! Nếu không thì hiệu ứng sẽ "không được như ý :D"



User avatar
vo_minhdat2007
Quản trị
Quản trị
Posts: 2227
Joined: Sun 17/07/2005 1:40 am
Has thanked: 13 times
Been thanked: 87 times
Contact:

Re: Tạo Aero Glass cho form

Postby vo_minhdat2007 » Mon 17/08/2009 5:15 pm

Dùng chung với code sau nếu không muốn backcolor chịu màu đen khi chạy không có Aero
viewtopic.php?f=51&t=8857&start=0

User avatar
hdn
Thành viên tâm huyết
Thành viên tâm huyết
Posts: 319
Joined: Wed 26/03/2008 7:09 pm
Has thanked: 1 time
Been thanked: 4 times

Re: Tạo Aero Glass cho form

Postby hdn » Mon 17/08/2009 8:39 pm

thêm cái này, đào lên từ "mộ cổ" :D
http://caulacbovb.com/oldforum/viewtopi ... hilit=Aero
Chạy được trên cả XP lẫn các hệ điều hành khác (miễn hỗ trợ .NET, ko cần đến Vista hay win 7)
:|

User avatar
minhduc4477
Thành viên năng nổ
Thành viên năng nổ
Posts: 94
Joined: Fri 11/12/2009 2:15 pm
Been thanked: 1 time

Re: Tạo Aero Glass cho form

Postby minhduc4477 » Fri 30/07/2010 7:27 am

Zầy làm seo xem! :-/
Image
Tình yêu là vĩnh cữu, chỉ có người tình là thay đỗi.

User avatar
vo_minhdat2007
Quản trị
Quản trị
Posts: 2227
Joined: Sun 17/07/2005 1:40 am
Has thanked: 13 times
Been thanked: 87 times
Contact:

Re: Tạo Aero Glass cho form

Postby vo_minhdat2007 » Fri 30/07/2010 11:46 am

Diễn đàn tháo Old Forum rồi.

thanhvatung
Posts: 9
Joined: Sat 23/05/2009 2:52 pm
Location: TP Thái Nguyên
Contact:

Re: Tạo Aero Glass cho form

Postby thanhvatung » Thu 16/09/2010 8:26 pm

chao các bác.
em mới tìm được cái này nhưng chưa test. mong các bác test dum nếu được thì tốt quá. em chi lang thang trên mạng vô tình vớ được thôi. nếu không thành công, mong các bác bỏ quá cho. cái này chạy trên XP được( theo như tác giả nói)
glass vb6.zip

User avatar
minhtuan99bk
Thành viên tích cực
Thành viên tích cực
Posts: 126
Joined: Sat 06/12/2008 2:22 pm
Contact:

Re: Tạo Aero Glass cho form

Postby minhtuan99bk » Wed 13/04/2011 8:34 am

Link tải glass vb6.zip die rồi bác thanhvatung ơi :((

User avatar
ico
Thành viên danh dự
Thành viên danh dự
Posts: 193
Joined: Tue 20/07/2010 9:23 am
Location: https://sites.google.com/site/icowaredownload
Has thanked: 1 time
Been thanked: 23 times
Contact:

Re: Tạo Aero Glass cho form

Postby ico » Sat 03/12/2011 12:43 pm

Khổ một nỗi là button text bị chuyển sang màu trắng thì sửa như thế nào ạ?

User avatar
vo_minhdat2007
Quản trị
Quản trị
Posts: 2227
Joined: Sun 17/07/2005 1:40 am
Has thanked: 13 times
Been thanked: 87 times
Contact:

Re: Tạo Aero Glass cho form

Postby vo_minhdat2007 » Sat 03/12/2011 5:57 pm

Mình nhớ hình như chỉ Label bị chứ Button đâu có bị nhỉ? ico cho Button đó vào GroupBox hay gì đúng không? Do Aero là của Microsoft, khi thiết kế MS dành Aero cho các form không có những control đó nên ta phải thiết kế theo ý MS, còn không thì phải bỏ Aero :(

User avatar
ico
Thành viên danh dự
Thành viên danh dự
Posts: 193
Joined: Tue 20/07/2010 9:23 am
Location: https://sites.google.com/site/icowaredownload
Has thanked: 1 time
Been thanked: 23 times
Contact:

Re: Tạo Aero Glass cho form

Postby ico » Sun 04/12/2011 10:52 am

Chán quá. Button, label, thậm chí là tabcontrol(phần nằm trong vùng aero) đều bị thành mau trắng cả.

User avatar
deptraithongminh
Thành viên tích cực
Thành viên tích cực
Posts: 143
Joined: Tue 02/07/2013 4:58 pm
Location: TPHCM
Has thanked: 17 times
Been thanked: 1 time

Re: Tạo Aero Glass cho form

Postby deptraithongminh » Sat 23/11/2013 10:40 pm

bạn có thể chỉnh lại cho control ko trong suốt đc ko ?


Return to “[.NET] Ứng dụng - Form và Control”

Who is online

Users browsing this forum: No registered users and 1 guest