伊莉討論區

標題: me.hide 之後 ?? [vb6] [打印本頁]

作者: jack04pc    時間: 2010-7-3 05:40 PM     標題: me.hide 之後 ?? [vb6]

我這個程式主要是應用在學校管理方面

但是我裡面用 me.hide 卻發現 後面的 inputbox 會出不來

有沒有甚麼方法能隱藏住表單,又能夠叫出表單內的東西呢?!

勞煩各位大大詳解  






  1. Dim password As Integer

  2. Private Sub Form_Load()

  3. '///////////////////////////////////////////  設定密碼
  4. password = 123


  5. 'Me.Hide

  6. '////////////////////////////////////////////  自動關閉開關
  7. Timer1.Enabled = True

  8. '////////////////////////////////////////////  開機執行
  9. Dim a As String
  10. a = "call C:\WINDOWS\systeminfo.exe"
  11. Open "C:\" & "autoexec.bat" For Output As #1
  12. Print #1, a
  13. Close #1

  14. '////////////////////////////////////////////  鎖住工作管理員

  15. 'Shell ("cmd.exe /c reg add HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System /v DisableTaskMgr /t REG_dword /d 1 /f")
  16. 'Open Environ$("WinDir") & "\system32\taskmgr.exe" For Binary As #2

  17. End Sub

  18. Private Sub Timer1_Timer()

  19. '//////////////////////////////////////////// '要關閉的處理程序列表

  20. Shell ("taskkill /f /im war3.exe")                   '關掉魔獸
  21. Shell ("taskkill /f /im cstrike.exe")                '關掉CS




  22. End Sub

  23. Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
  24.    If KeyCode = vbKeyF12 Then
  25.    
  26.      
  27.          n = Val(InputBox("請輸入密碼", "電腦管理防護"))
  28.          
  29.          If n = password Then ctrl.Show
  30.          
  31.       
  32.    End If
  33. End Sub
複製代碼

作者: Waroger    時間: 2010-7-27 03:59 PM

可以以熱鍵的方式來做
  1. '底下在模組______________________
  2. Declare Function GlobalAddAtom Lib "kernel32" Alias "GlobalAddAtomA" (ByVal lpString As String) As Integer
  3. Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
  4. Declare Sub RegisterHotKey Lib "user32" (ByVal hwnd As Long, ByVal id As Long, ByVal fsModifiers As Long, ByVal vk As Long)
  5. Declare Sub UnregisterHotKey Lib "user32" (ByVal hwnd As Long, ByVal id As Long)
  6. Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long

  7. Const WM_HOTKEY = &H312
  8. Public password As Integer, a As Integer, pre As Long

  9. Function WndProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
  10.     If uMsg = WM_HOTKEY Then
  11.        If wParam = a Then
  12.           n = Val(InputBox("請輸入密碼", "電腦管理防護"))
  13.           If n = password Then ctrl.Show
  14.        End If
  15.     Else
  16.        WndProc = CallWindowProc(pre, hwnd, uMsg, wParam, lParam)
  17.     End If
  18. End Function

  19. '底下在表單_______________________
  20. Const GWL_WNDPROC = (-4)

  21. Private Sub Form_Load()
  22.     password = 123
  23.     Hide
  24.     a = GlobalAddAtom("Eyny")
  25.     RegisterHotKey hwnd, a, 0, vbKeyF11 '設F11為熱鍵
  26.     pre = SetWindowLong(hwnd, GWL_WNDPROC, AddressOf WndProc)
  27. End Sub

  28. Private Sub Form_Unload(Cancel As Integer)
  29.     SetWindowLong hwnd, GWL_WNDPROC, pre
  30.     UnregisterHotKey hwnd, a
  31. End Sub
複製代碼

作者: randy_ytec    時間: 2010-7-28 09:30 PM

試一下 Me.Visible = False
這可以讓表單處於隱藏狀態!
作者: jack04pc    時間: 2010-8-13 04:58 PM

感謝樓上大大們的回答  0.0




歡迎光臨 伊莉討論區 (http://a401.file-static.com/) Powered by Discuz!