View Full Version : Cứu em với, nhanh lên !!
NgocHien
31-10-2002, 12:31
Chào mấy anh, em đang làm chương trình, kẹt ngay chỗ này, mấy anh chỉ cho em nha.
VĐỀ 1:
Form 1: có 2 radio, nút 1 tên: radio1
nút 2 tên: radio2
và có 1 button, tên: ok
Form 2 sẽ lấy dữ liệu từ form 1. làm sao để biết trong Form 1 chọn radio nào
VD: Khi form 1 chọn radio1 thì form2 sẽ Enable, và khi chọn radio2 sẽ form2 không
enable.
VĐỀ 2: Làm sao để mình biết chương trình Vietkey đang chạy ??
Vậy làm sao hả mấy anh, giúp em liền nha, em đang cần gấp gấp, cảm ơn các anh
nhiều.
bạn có thể truy cập đến Radio ở Form 1 bằng cách sau Form1.Radio1.... hình như là vậy hay sao í, kiểm tra thử xem.
Còn như muốn biết VK có chạy hay không bạn có thể sử dụng hàm EnumProcess để liệt kê các ứng dụng đang chạy. Nếu gặp VK thì ok, nếu không thì thui...làm gì thì làm.
NgocHien
31-10-2002, 16:18
Anh Nicky ơi, cho em đoạn code đó đi, anh chỉ rõ ràng luôn, giúp em nhanh nha, em cảm ơn anh lắm lắm, nhanh lên anh ơi
Tiếc là bi giờ đang ở dịch vụ nên không thể thử được...để về nhà nghiên cứu đã...Bye !
KEM_WALL
31-10-2002, 17:22
walls cũng đang ở dịch vụ nên không chắc chắn lắm ( sai thì thông cảm nha ;) )
sub a()
if form1.radio1.value = true then
form2.enable = true
else
form2.enable = false
end if
end sub
còn cái hàm EnumProcess kô có MSDN và winApi Viewer thì walls pó tay , kô thể hướng dẫn được, về nhà ngiên cứu đã ;)
White_Rose
31-10-2002, 19:17
Mình có cái này muốn góp ý:
Nếu tên là 2 radio thì rõ ràng có trưòng hợp cả hai cùng bị check. Nếu thế thì cái form2 nó thế nào???
Chỉ cần một radio là đủ rồi. Nếu nó được check thì Form hiện.
Form2.Enabled = Form1.Radio.Value
NgocHien
31-10-2002, 20:54
Anh nói rõ hơn đi, em có 2 radio, cả 2 đều có giá trị khác nhau chứ, cái này True thì cái kia False.
Anh nói rõ hơn nha
White_Rose
31-10-2002, 23:56
Nếu phải thực hiện các công việc khác (không rõ là gì) thì có thể dùng cả hai nhưng ở trường hợp này thì không cần thiết lắm.
- Dùng một check box thay thế cho trực quan ----> làm như trên
- Dùng một radio nhưng lại như checkbox (nghĩa là click thì chọn, click phát nữa thì lại bỏ chọn)
Đoạn code vẫn vậy mà bớt đi một control
sub CheckBox1_Click()
checkbox1.value = not checkbox1.value
Form2.enabled = checkbox1.value
end sub
Thuộc tính Enable không làm cho form biến mất đâu. Thử cái này.
Private Sub Form_Load()
Form2.Show
End Sub
Private Sub Option1_Click()
Form2.Show
End Sub
Private Sub Option2_Click()
Form2.Hide
End Sub
Còn về đóng VK thì có thể xem ví dụ sau
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Const WM_CLOSE = &H10
Private Sub Form_Load()
Dim WinWnd As Long
Ret = InputBox("Nhap vao dong chu tren Title bar cua cua so, Nho la phai that chinh xac")
WinWnd = FindWindow(vbNullString, Ret)
If WinWnd = 0 Then MsgBox "Khong tim thay cua so co Title la : " & Ret: Exit Sub
PostMessage WinWnd, WM_CLOSE, 0&, 0&
End Sub
Bạn mở Motepad hay cái gì đó. Sau đó chạy đoạn code, gõ vào chính xác dòng chữ trên Title bar nó sẽ đóng chương trình có Title bar như bạn gõ. bây giờ bạn cần phải biết Title của VK thôi.
C ya !!
White_Rose
01-11-2002, 20:27
form2 sẽ Enable, và khi chọn radio2 sẽ form2 không enable.
CayTreGia
03-11-2002, 19:32
Cho mình bổ sung thêm một ý mới cái nghen về Vấn đề 2 của bạn. Đó là làm sao biết VK đang chạy hay không? Bạn có thể dùng hàm: tasks.exits("Tên chương trình")
VD:
If not tasks.exist("VKNT") then 'nếu chưa chạy viêt key thì
msgbox("chua chay viet key")
.....
minh thu nghiem tren VBA roi, va thay rat co hieu qua, ban thu xem sao? :)
trời, hay quá mình tìm mãi mà ko thấy.
Thank
mà cách dùng task.exits như thế nào. Bạn có thể nói rõ ko.
Powered by vBulletin® Version 4.2.0 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.