• 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 Link Label cho ứng dụng

Các thủ thuật liên quan đến việc xử lý ứng dụng, biểu mẫu và control
Hình đại diện của người dùng
clarkkent
Mạnh Thường Quân
Mạnh Thường Quân
Bài viết: 1641
Ngày tham gia: T.Tư 16/04/2008 11:25 am
Đến từ: Chợ Lách - Bến Tre
Been thanked: 31 time
Liên hệ:

Tạo Link Label cho ứng dụng

Gửi bàigửi bởi clarkkent » CN 29/06/2008 2:37 pm

Thủ thuật: Tạo Link Label cho ứng dụng
Tác giả: Nguyễn Trung Tín
Mô tả: Tạo Link Label cho ứng dụng



Ta sẽ có 2 Label. Label1 dùng làm link tới 1 trang web, Label2 dùng để gửi mail...
LinkLabel.PNG
LinkLabel.PNG (6.68 KiB) Đã xem 6086 lần


Mã: Chọn hết

  1. Private Declare Function ShellExecute Lib "shell32" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
  2. Private Declare Function GetDesktopWindow Lib "user32" () As Long
  3. Private Declare Function LoadCursor Lib "user32.dll" Alias "LoadCursorA" (ByVal hInstance As Long, ByVal lpCursorName As Long) As Long
  4. Private Declare Function SetCursor Lib "user32.dll" (ByVal hCursor As Long) As Long
  5.  
  6. Private Const SW_SHOWNORMAL As Long = 1
  7. Private Const SW_SHOWMAXIMIZED As Long = 3
  8. Private Const SW_SHOWDEFAULT As Long = 10
  9.  
  10. Const IDC_HAND As Long = &H7F89
  11. Dim hCursor As Long
  12.  
  13. Private Sub Form_Load()
  14. With Label1
  15.         .ForeColor = clrLinkInactive
  16.         .Caption = "http://caulacbovb.com/forum/"
  17.    End With
  18.    hCursor = LoadCursor(ByVal 0&, IDC_HAND)
  19. End Sub
  20.  
  21. Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  22.         Label1.ForeColor = vbBlack
  23.         Label1.Font.Underline = False
  24.         Label2.ForeColor = vbBlack
  25.         Label2.Font.Underline = False
  26. End Sub
  27.  
  28. Private Sub Label1_Click()
  29.     Dim sURL As String
  30.     sURL = Label1.Caption
  31.     Call RunShellExecute("open", sURL, 0&, 0&, SW_SHOWNORMAL)
  32. End Sub
  33.  
  34. Private Sub Label1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  35.     Label1.ForeColor = vbBlue
  36.     Label1.Font.Underline = True
  37.     'Set con chuột có hình bàn tay
  38.     SetCursor hCursor
  39. End Sub
  40.  
  41. Private Sub RunShellExecute(sTopic As String, sFile As Variant, sParams As Variant, sDirectory As Variant, nShowCmd As Long)
  42.    Call ShellExecute(GetDesktopWindow(), sTopic, sFile, sParams, sDirectory, nShowCmd)
  43. End Sub
  44.  
  45. Private Sub Label2_Click()
  46.     ShellExecute hwnd, "open", "mailto:" & Label2.Caption, vbNullString, vbNullString, SW_SHOW
  47. End Sub
  48.  
  49. Private Sub Label2_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  50.     Label2.ForeColor = vbBlue
  51.     Label2.Font.Underline = True
  52.     'Set con chuột có hình bàn tay
  53.     SetCursor hCursor
  54. End Sub
  55.  
Tập tin đính kèm
LinkLabel.rar
Tạo Link Label cho ứng dụng
(1.58 KiB) Đã tải 958 lần


• Hôm bây: www.tinsoftware.com ^ ^
Cố gắng lên...

Hình đại diện của người dùng
Dang Minh Du
Thành viên ưu tú
Thành viên ưu tú
Bài viết: 531
Ngày tham gia: T.Tư 02/04/2008 2:08 pm
Đến từ: RGames Team
Has thanked: 3 time
Been thanked: 17 time
Liên hệ:

Re: Tạo Link Label cho ứng dụng

Gửi bàigửi bởi Dang Minh Du » T.Sáu 11/07/2008 11:55 am

Code của em ngắn hơn, áp dụng cho control thì tiện hơn :D , chỉ dùng shell và một ít thuật khác :D
~°Dòng Sông Mùa Thu°~
Studying...!

tienlbhoc
Thành viên tâm huyết
Thành viên tâm huyết
Bài viết: 415
Ngày tham gia: T.Bảy 14/07/2007 10:06 pm
Đến từ: Hà Nội
Been thanked: 1 time

Re: Tạo Link Label cho ứng dụng

Gửi bàigửi bởi tienlbhoc » T.Sáu 11/07/2008 12:52 pm

dotnet hình như có sẵn :D
Diễn đàn và blog phần mềm tự làm :
http://my.opera.com/DienDanTienlbhoc/forums/
http://my.opera.com/tienlbhoc/blog/

Hình đại diện của người dùng
Kỳ Nam
Guru
Guru
Bài viết: 510
Ngày tham gia: CN 12/08/2007 8:47 pm
Đến từ: Qui Nhơn
Been thanked: 1 time
Liên hệ:

Re: Tạo Link Label cho ứng dụng

Gửi bàigửi bởi Kỳ Nam » T.Sáu 11/07/2008 2:59 pm

tienlbhoc đã viết:dotnet hình như có sẵn :D

ngoại đạo kiếm chỗ khác chơi

lần đầu tiên dô 1 mục của VB6 , vì muốn biết tienlbhoc phát biểu gì trong đây

tienlbhoc
Thành viên tâm huyết
Thành viên tâm huyết
Bài viết: 415
Ngày tham gia: T.Bảy 14/07/2007 10:06 pm
Đến từ: Hà Nội
Been thanked: 1 time

Re: Tạo Link Label cho ứng dụng

Gửi bàigửi bởi tienlbhoc » T.Sáu 11/07/2008 4:03 pm

lần đầu vào box vb => không biết vb , thế mà còn chê người khác ;))
Diễn đàn và blog phần mềm tự làm :
http://my.opera.com/DienDanTienlbhoc/forums/
http://my.opera.com/tienlbhoc/blog/

Hình đại diện của người dùng
clarkkent
Mạnh Thường Quân
Mạnh Thường Quân
Bài viết: 1641
Ngày tham gia: T.Tư 16/04/2008 11:25 am
Đến từ: Chợ Lách - Bến Tre
Been thanked: 31 time
Liên hệ:

Re: Tạo Link Label cho ứng dụng

Gửi bàigửi bởi clarkkent » T.Bảy 12/07/2008 12:53 pm

tienlbhoc đã viết:dotnet hình như có sẵn :D

Phải lả C# chứ :D
• Hôm bây: www.tinsoftware.com ^ ^
Cố gắng lên...

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 Link Label cho ứng dụng

Gửi bàigửi bởi vo_minhdat2007 » T.Bảy 12/07/2008 4:17 pm

clarkkent đã viết:
tienlbhoc đã viết:dotnet hình như có sẵn :D

Phải lả C# chứ :D

.NET là có cả : Label Link là một control chuẩn hẳn hoi >:) .
P/S Sorry vì lạc box :D

NightMarez
Bài viết: 5
Ngày tham gia: T.Năm 24/07/2008 2:50 pm

Re: Tạo Link Label cho ứng dụng

Gửi bàigửi bởi NightMarez » T.Hai 28/07/2008 7:46 pm

Cái này làm khi mousemove vào label thì nó gạch chân và đổi sang màu xanh, khi mousemove vào form lại thì nó xóa đi. Nhưng bây giờ giả sử mouse chưa move vào form mà move vào chỗ khác rồi thì sao nhỉ :-?. Cái này chắc là phải linh hoạt trong khi sử dụng rồi :D

Hình đại diện của người dùng
clarkkent
Mạnh Thường Quân
Mạnh Thường Quân
Bài viết: 1641
Ngày tham gia: T.Tư 16/04/2008 11:25 am
Đến từ: Chợ Lách - Bến Tre
Been thanked: 31 time
Liên hệ:

Re: Tạo Link Label cho ứng dụng

Gửi bàigửi bởi clarkkent » T.Ba 29/07/2008 11:55 am

NightMarez đã viết:Cái này làm khi mousemove vào label thì nó gạch chân và đổi sang màu xanh, khi mousemove vào form lại thì nó xóa đi. Nhưng bây giờ giả sử mouse chưa move vào form mà move vào chỗ khác rồi thì sao nhỉ :-?. Cái này chắc là phải linh hoạt trong khi sử dụng rồi :D

Ừ! Nhưng
mouse chưa move vào form mà move vào chỗ khác rồi thì

thì bạn cũng nhanh đấy :D
• Hôm bây: www.tinsoftware.com ^ ^
Cố gắng lên...

Hình đại diện của người dùng
Dang Minh Du
Thành viên ưu tú
Thành viên ưu tú
Bài viết: 531
Ngày tham gia: T.Tư 02/04/2008 2:08 pm
Đến từ: RGames Team
Has thanked: 3 time
Been thanked: 17 time
Liên hệ:

Re: Tạo Link Label cho ứng dụng

Gửi bàigửi bởi Dang Minh Du » T.Bảy 02/08/2008 8:30 am

Tạo một hàm isOver cho label, kiểm tra = timer :D
~°Dòng Sông Mùa Thu°~
Studying...!

vanthuy
Thành viên chính thức
Thành viên chính thức
Bài viết: 15
Ngày tham gia: T.Tư 13/08/2008 11:40 am
Đến từ: Đồng Nai

Re: Tạo Link Label cho ứng dụng

Gửi bàigửi bởi vanthuy » T.Hai 22/09/2008 1:57 pm

;))
bây giờ giả sử mouse chưa move vào form mà move vào chỗ khác rồi thì sao nhỉ .

chỗ khác ư! cứ copy đoạn code trong sự kiện Form_MouseMove quăng zô hết sự kiện MouseMove của mấy "chỗ khác" đó xem. ;;)
mouse chưa move vào form mà move vào chỗ khác rồi thì
thì bạn cũng nhanh đấy
:))
Lúc đó bạn nhanh cỡ nào cũng...bó tay :))

Hình đại diện của người dùng
doicanhden
Thành viên tích cực
Thành viên tích cực
Bài viết: 160
Ngày tham gia: T.Tư 02/09/2009 4:29 pm
Đến từ: Tp.HCM
Has thanked: 7 time
Been thanked: 3 time
Liên hệ:

Re: Tạo Link Label cho ứng dụng

Gửi bàigửi bởi doicanhden » T.Tư 06/04/2011 8:37 pm

Hờ Hờ chưa chắc.
VD nhá: Kéo cái chương trình nào đó nằm chồng lên cái LInk Label, move chuột vô cái LinkLabel, rồi cứ "thong thả" di chuyển chuột sang chương trình nằm ở trên. ---> Lỗi


Quay về “[VB] Ứ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