• 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

Form trong suốt, Form Hình dạng bất kỳ, TitleBar giả

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

kingstar99
Bài viết: 6
Ngày tham gia: T.Tư 02/11/2011 10:09 pm
Has thanked: 1 time
Been thanked: 6 time

Form trong suốt, Form Hình dạng bất kỳ, TitleBar giả

Gửi bàigửi bởi kingstar99 » T.Năm 22/12/2011 12:08 am

Thủ thuật: Form trong suốt, Form Hình dạng bất kỳ, TitleBar giả
Tác giả: kingstar99
Mô tả: Form trong suốt, Form Hình dạng bất kỳ, TitleBar giả


Mình làm quen với VB.Net được 3 tháng rồi, hôm nay mạo muội viết bài đầu tiên mong được học hỏi thêm nhiều ý kiến hay !

Những đề tài mình đưa ra không mới mẻ gì, nhưng những cách trên các diển đàn hơi phức tạp và khó hiểu !

I-Form trong suốt
Trong sự kiện LoadForm chèn code sau:
  1. Private Sub Frm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  2.         TransparencyKey = BackColor
  3.  End Sub
  4.  


II-Form hình dạng bất kỳ

Từ Form trong suốt đó cho vào 1 PictureBox với các thuộc tình sau:
Dock=Fill
Image "Cho vào một ảnh *.png hìnhdạng bất kỳ
BackColor=Transparency

III-TitleBar giả (di chuyển được Form)
Thuộc tính BoderStyle=None
Cho vào một PictureBox đặt vị trí trên cùng giống như TitleBar

  1. Dim IsMouseDown = False
  2.     Dim startPoint
  3.     Private Sub TitleBar_MouseUp_1(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TitleBar.MouseUp
  4.         IsMouseDown = False
  5.     End Sub
  6.     Private Sub TitleBar_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TitleBar.MouseDown
  7.         startPoint = e.Location
  8.         IsMouseDown = True
  9.     End Sub
  10.     Private Sub TitleBar_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TitleBar.MouseMove
  11.         If IsMouseDown Then
  12.             Dim p1 = New Point(e.X, e.Y)
  13.             Dim p2 = PointToScreen(p1)
  14.             Dim p3 = New Point(p2.X - startPoint.X, p2.Y - startPoint.Y)
  15.             Location = p3
  16.         End If
  17.       End Sub
  18.  


Hy vọng hữu ích !



thanghungkhi
Bài viết: 6
Ngày tham gia: T.Năm 08/12/2011 6:11 pm
Has thanked: 4 time

Re: Form trong suốt, Form Hình dạng bất kỳ, TitleBar giả

Gửi bàigửi bởi thanghungkhi » T.Bảy 24/12/2011 1:52 pm

Em có đọc chủ đề này của CLB VB, nhưng chỉ có code nên không hiểu lắm, chỉ ctrl+c rồi ctrl+v, giờ thì hiểu rồi ^^

Songuku95
Bài viết: 8
Ngày tham gia: CN 29/01/2012 9:46 pm
Has thanked: 2 time

Re: Form trong suốt, Form Hình dạng bất kỳ, TitleBar giả

Gửi bàigửi bởi Songuku95 » CN 05/02/2012 11:26 pm

Sao em cài cái thay đổi hình dạng Form nó lại ra thế này ạ? Ai giúp em với :)
Hình ảnh

Hình đại diện của người dùng
nimgiaminh
Thành viên danh dự
Thành viên danh dự
Bài viết: 432
Ngày tham gia: T.Bảy 07/08/2010 9:24 am
Đến từ: Ở dưới đó đó
Has thanked: 6 time
Been thanked: 18 time
Liên hệ:

Re: Form trong suốt, Form Hình dạng bất kỳ, TitleBar giả

Gửi bàigửi bởi nimgiaminh » CN 05/02/2012 11:32 pm

Bạn cần đặt thuộc tính form border là none

Songuku95
Bài viết: 8
Ngày tham gia: CN 29/01/2012 9:46 pm
Has thanked: 2 time

Re: Form trong suốt, Form Hình dạng bất kỳ, TitleBar giả

Gửi bàigửi bởi Songuku95 » T.Hai 06/02/2012 10:17 pm

Em làm được rồi
Nhưng như thế này thì không di chuyển được Form. Hơn nữa lại ko có 3 cái thanh Close, Restore, Minimize

Hình đại diện của người dùng
nhatlinh0207
Thành viên tâm huyết
Thành viên tâm huyết
Bài viết: 378
Ngày tham gia: T.Tư 15/08/2012 7:54 pm
Has thanked: 54 time
Been thanked: 45 time

Re: Form trong suốt, Form Hình dạng bất kỳ, TitleBar giả

Gửi bàigửi bởi nhatlinh0207 » T.Ba 16/10/2012 1:25 pm

hay đấy. mình làm được rồi. nhưng chỉ thắc mắc là khi chèn button thì vẫn có chỗ trên button nhìn xuyên qua được thế lại hơi xấu ;;)

Hình đại diện của người dùng
nimgiaminh
Thành viên danh dự
Thành viên danh dự
Bài viết: 432
Ngày tham gia: T.Bảy 07/08/2010 9:24 am
Đến từ: Ở dưới đó đó
Has thanked: 6 time
Been thanked: 18 time
Liên hệ:

Re: Form trong suốt, Form Hình dạng bất kỳ, TitleBar giả

Gửi bàigửi bởi nimgiaminh » T.Tư 17/10/2012 6:24 pm

Vậy bạn đặt lại background của button.

tranbadat
Thành viên chính thức
Thành viên chính thức
Bài viết: 44
Ngày tham gia: T.Năm 21/02/2013 9:50 pm
Has thanked: 22 time
Been thanked: 4 time

Re: Form trong suốt, Form Hình dạng bất kỳ, TitleBar giả

Gửi bàigửi bởi tranbadat » T.Sáu 22/02/2013 12:44 pm

cái này hay nè!!!


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.0 khách