• 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

Di chuyển control lúc runtime

Các thủ thuật liên quan đến việc xử lý ứng dụng, biểu mẫu và control
User avatar
truongphu
VIP
VIP
Posts: 4766
Joined: Sun 04/11/2007 10:57 am
Location: Cam Đức, Khánh hòa
Has thanked: 14 times
Been thanked: 519 times

Di chuyển control lúc runtime

Postby truongphu » Fri 16/01/2009 4:55 pm

Thủ thuật: Di chuyển control lúc runtime
Tác giả: truongphu
Mô tả: Di chuyển control lúc runtime



Cần Text1 và Command1

Code: Select all

  1. Option Explicit
  2.  
  3.   Private Declare Function ReleaseCapture Lib "user32" () As Long
  4.   Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
  5.   (ByVal hWnd&, ByVal wMsg&, wParam As Any, lParam As Any) As Long
  6.   Dim Mov As Boolean
  7.  
  8. Private Sub Command1_Click()
  9.   Text1.MousePointer = vbArrow
  10.   Command1.Caption = "Hãy Di Chuyên"
  11. End Sub
  12.  
  13. Private Sub Text1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
  14.   If Text1.MousePointer = vbArrow Then
  15.     Call ReleaseCapture
  16.     Call SendMessage(Text1.hWnd, ByVal &HA1&, ByVal 2&, ByVal 0&)
  17.     Mov = True
  18.   End If
  19. End Sub
  20.  
  21. Private Sub Text1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
  22.   If Mov Then
  23.     Text1.MousePointer = vbDefault
  24.     Mov = False
  25.     Command1.Caption = "Di Chuyên Không?"
  26.   End If
  27. End Sub


Hay không? Cảm ơn đã đọc bài. Xin nhấn nút Thank tại đây


o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

aloxanh
Posts: 1
Joined: Sat 14/11/2009 8:49 pm

Re: Di chuyển control lúc runtime

Postby aloxanh » Mon 08/02/2010 3:00 pm

anh ơi cho e hỏi là : Làm thế nào để di chuyển Text1 theo một tọa độ Y xác định trước ? Có nghĩa là khi dùng chuột kéo Text1 thì Text1.Top = hằng số và không phụ thuộc vào tọa độ Y của chuột.

User avatar
thuongall
Quản trị
Quản trị
Posts: 456
Joined: Wed 26/01/2005 8:05 am
Location: Quê hương Đồng Khởi
Been thanked: 9 times
Contact:

Re: Di chuyển control lúc runtime

Postby thuongall » Mon 08/02/2010 3:13 pm

Code này trên forum đã có rồi, form cần 1 Textbox.
  1. Dim Xx As Integer
  2. Dim Yz As Integer
  3.  
  4. Private Sub Text1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
  5.     Yz = Text1.Top
  6.     Xx = X
  7. End Sub
  8.  
  9. Private Sub Text1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  10.     If Button = 1 Then
  11.         Text1.Top = Yz
  12.         Text1.Left = Text1.Left + (X - Xx)
  13.     End If
  14. End Sub

anhmaune
Posts: 9
Joined: Mon 28/03/2011 8:10 am
Has thanked: 4 times

Re: Di chuyển control lúc runtime

Postby anhmaune » Sat 18/06/2011 10:06 am

anh oi xem giùm em xem cái code tự động tăng hd lên 1 này nó bị lỗi chỗ nào ak ?
Attachments
New folder.rar
(8.88 KiB) Downloaded 299 times


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

Who is online

Users browsing this forum: No registered users and 0 guests