• 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

Điều hành viên: tungcan5diop, QUANITGROBEST

Hình đại diện của người dùng
vo_minhdat2007
Quản trị
Quản trị
Bài viết: 2227
Ngày tham gia: CN 17/07/2005 1:40 am
Has thanked: 13 time
Been thanked: 87 time
Liên hệ:

Tạo Aero Glass cho form

Gửi bàigửi bởi vo_minhdat2007 » T.Năm 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 :

Mã: Chọn hết

  1. Imports System.Runtime.InteropServices


Khai báo :

Mã: Chọn hết

  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 :

Mã: Chọn hết

  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"



Hình đại diện của người dùng
vo_minhdat2007
Quản trị
Quản trị
Bài viết: 2227
Ngày tham gia: CN 17/07/2005 1:40 am
Has thanked: 13 time
Been thanked: 87 time
Liên hệ:

Re: Tạo Aero Glass cho form

Gửi bàigửi bởi vo_minhdat2007 » T.Hai 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

Hình đại diện của người dùng
hdn
Thành viên tâm huyết
Thành viên tâm huyết
Bài viết: 319
Ngày tham gia: T.Tư 26/03/2008 7:09 pm
Has thanked: 1 time
Been thanked: 4 time

Re: Tạo Aero Glass cho form

Gửi bàigửi bởi hdn » T.Hai 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)
:|

Hình đại diện của người dùng
minhduc4477
Thành viên năng nổ
Thành viên năng nổ
Bài viết: 94
Ngày tham gia: T.Sáu 11/12/2009 2:15 pm
Been thanked: 1 time

Re: Tạo Aero Glass cho form

Gửi bàigửi bởi minhduc4477 » T.Sáu 30/07/2010 7:27 am

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

Hình đại diện của người dùng
vo_minhdat2007
Quản trị
Quản trị
Bài viết: 2227
Ngày tham gia: CN 17/07/2005 1:40 am
Has thanked: 13 time
Been thanked: 87 time
Liên hệ:

Re: Tạo Aero Glass cho form

Gửi bàigửi bởi vo_minhdat2007 » T.Sáu 30/07/2010 11:46 am

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

thanhvatung
Bài viết: 9
Ngày tham gia: T.Bảy 23/05/2009 2:52 pm
Đến từ: TP Thái Nguyên
Liên hệ:

Re: Tạo Aero Glass cho form

Gửi bàigửi bởi thanhvatung » T.Năm 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

Hình đại diện của người dùng
minhtuan99bk
Thành viên tích cực
Thành viên tích cực
Bài viết: 126
Ngày tham gia: T.Bảy 06/12/2008 2:22 pm
Liên hệ:

Re: Tạo Aero Glass cho form

Gửi bàigửi bởi minhtuan99bk » T.Tư 13/04/2011 8:34 am

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

Hình đại diện của người dùng
ico
Thành viên danh dự
Thành viên danh dự
Bài viết: 193
Ngày tham gia: T.Ba 20/07/2010 9:23 am
Đến từ: https://sites.google.com/site/icowaredownload
Has thanked: 1 time
Been thanked: 23 time
Liên hệ:

Re: Tạo Aero Glass cho form

Gửi bàigửi bởi ico » T.Bảy 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 ạ?

Hình đại diện của người dùng
vo_minhdat2007
Quản trị
Quản trị
Bài viết: 2227
Ngày tham gia: CN 17/07/2005 1:40 am
Has thanked: 13 time
Been thanked: 87 time
Liên hệ:

Re: Tạo Aero Glass cho form

Gửi bàigửi bởi vo_minhdat2007 » T.Bảy 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 :(

Hình đại diện của người dùng
ico
Thành viên danh dự
Thành viên danh dự
Bài viết: 193
Ngày tham gia: T.Ba 20/07/2010 9:23 am
Đến từ: https://sites.google.com/site/icowaredownload
Has thanked: 1 time
Been thanked: 23 time
Liên hệ:

Re: Tạo Aero Glass cho form

Gửi bàigửi bởi ico » CN 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ả.

Hình đại diện của người dùng
deptraithongminh
Thành viên tích cực
Thành viên tích cực
Bài viết: 143
Ngày tham gia: T.Ba 02/07/2013 4:58 pm
Đến từ: TPHCM
Has thanked: 17 time
Been thanked: 1 time

Re: Tạo Aero Glass cho form

Gửi bàigửi bởi deptraithongminh » T.Bảy 23/11/2013 10:40 pm

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


Quay về “[.NET] Ứng dụng - Form và Control”

Đang trực tuyến

Đang xem chuyên mục này: Không có thành viên nào trực tuyến.1 khách