在前台运行一个不可见的表单

时间:2013-05-10 05:59:53

标签: vb6

我想知道如何能够在前台运行一个不可见的表单(意味着它可以在你计算机中的任何地方运行)。我尝试过使用模块的无形应用程序,但不幸的是没有任何反应。我也尝试过做

Form1.Visible = False
Form1.WindowState = 2 (Maximized)

但是它不会在前景中运行(如果它专注于它),并且当你按下一个键时,Windows“警告错误”类型的声音(“ehh。”单调的声音)会继续播放。我试过的编码就是你想知道的:

Private Sub Form1_KeyPress(KeyAscii As Integer, Shift As Integer)
If KeyAscii <> 0 Then PlaySound App.Path & "\sounds\ding.wav", ByVal 0&, SND_FILENAME Or SND_ASYNC
End Sub

当然使用Windows API播放wav文件(winnm.dll或我认为的东西)

我的主要问题是(这意味着这就是我想要回答的)是我怎么可能让它在电脑上运行而不是“呃”。单调的声音。因为那显然不是我想要实现的目标。

哦,快速更新,我已经让它播放了正确的声音(HOORAY!)。只是无视问题的后半部分。

1 个答案:

答案 0 :(得分:0)

请告诉我们您为什么要这样做? 你想要完成什么?

查看以下API:

'api for keeping form on top
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long

例如,请按以下方式调用:

  'put form always on top
  With Screen
    SetWindowPos Me.hwnd, -1, 0, 0, .Width, .Height, 3
  End With 'screen