• 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
User avatar
clarkkent
Mạnh Thường Quân
Mạnh Thường Quân
Posts: 1641
Joined: Wed 16/04/2008 11:25 am
Location: Chợ Lách - Bến Tre
Been thanked: 31 times
Contact:

Tạo Link Label cho ứng dụng

Postby clarkkent » Sun 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) Viewed 8386 times


Code: Select all

  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.  
Attachments
LinkLabel.rar
Tạo Link Label cho ứng dụng
(1.58 KiB) Downloaded 1031 times


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

User avatar
Dang Minh Du
Thành viên ưu tú
Thành viên ưu tú
Posts: 531
Joined: Wed 02/04/2008 2:08 pm
Location: RGames Team
Has thanked: 3 times
Been thanked: 17 times
Contact:

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

Postby Dang Minh Du » Fri 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
Posts: 415
Joined: Sat 14/07/2007 10:06 pm
Location: Hà Nội
Been thanked: 1 time

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

Postby tienlbhoc » Fri 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/

User avatar
Kỳ Nam
Guru
Guru
Posts: 510
Joined: Sun 12/08/2007 8:47 pm
Location: Qui Nhơn
Been thanked: 1 time
Contact:

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

Postby Kỳ Nam » Fri 11/07/2008 2:59 pm

tienlbhoc wrote: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
Posts: 415
Joined: Sat 14/07/2007 10:06 pm
Location: Hà Nội
Been thanked: 1 time

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

Postby tienlbhoc » Fri 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/

User avatar
clarkkent
Mạnh Thường Quân
Mạnh Thường Quân
Posts: 1641
Joined: Wed 16/04/2008 11:25 am
Location: Chợ Lách - Bến Tre
Been thanked: 31 times
Contact:

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

Postby clarkkent » Sat 12/07/2008 12:53 pm

tienlbhoc wrote: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...

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

Postby vo_minhdat2007 » Sat 12/07/2008 4:17 pm

clarkkent wrote:
tienlbhoc wrote: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
Posts: 5
Joined: Thu 24/07/2008 2:50 pm

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

Postby NightMarez » Mon 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

User avatar
clarkkent
Mạnh Thường Quân
Mạnh Thường Quân
Posts: 1641
Joined: Wed 16/04/2008 11:25 am
Location: Chợ Lách - Bến Tre
Been thanked: 31 times
Contact:

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

Postby clarkkent » Tue 29/07/2008 11:55 am

NightMarez wrote: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...

User avatar
Dang Minh Du
Thành viên ưu tú
Thành viên ưu tú
Posts: 531
Joined: Wed 02/04/2008 2:08 pm
Location: RGames Team
Has thanked: 3 times
Been thanked: 17 times
Contact:

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

Postby Dang Minh Du » Sat 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
Posts: 15
Joined: Wed 13/08/2008 11:40 am
Location: Đồng Nai

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

Postby vanthuy » Mon 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 :))

User avatar
doicanhden
Thành viên tích cực
Thành viên tích cực
Posts: 160
Joined: Wed 02/09/2009 4:29 pm
Location: Tp.HCM
Has thanked: 7 times
Been thanked: 3 times
Contact:

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

Postby doicanhden » Wed 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


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

Who is online

Users browsing this forum: No registered users and 2 guests