to shawls(小山)(无业游民)(VB版的众矢之的): 不是我不想研究呀,他写在个dll里,我怎么看呀:( 不过,那个例子倒是很典型的,可惜没有源码
Dim hw As LongPrivate Sub Command1_Click() WebBrowser1.Navigate Text1.Text WebBrowser1.Visible = True End SubPrivate Sub Form_Load() Dim h As Long, aClass As String, k As Long h = GetWindow(hwnd, GW_CHILD) aClass = Space$(128) Do While h k = GetClassName(h, aClass, 128) If Left$(aClass, k) = "Shell Embedding" Then hw = h: Exit Do h = GetWindow(h, GW_HWNDNEXT) Loop WebBrowser1.Navigate "" origWndProc = SetWindowLong(hw, GWL_WNDPROC, AddressOf AppWndProc) End SubPrivate Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) SetWindowLong hw, GWL_WNDPROC, origWndProc End SubPrivate Sub mnuPrint_Click() MsgBox "Print!" End SubPrivate Sub Text1_GotFocus() Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text) End Sub
楼上的,先谢谢拉! 但我对api不是很熟悉,上面的程序除了要进行以下声名外,还要怎么做? Public Declare Function GetWindow Lib "user32" (ByVal hwnd As Long, ByVal wCmd As Long) As LongPublic Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As LongPublic Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
frame的enable设为false.
frame1.enabled=true
frame2.enabled=false
然后,就可以创造自己的单击事件。
在click事件中,先判断一下参数的值。
如果是1就是左击,如果是2就是右击。(大致如此)
frame2放在frame1里,WebBrowser放在frame2里?然后?
不是我不想研究呀,他写在个dll里,我怎么看呀:(
不过,那个例子倒是很典型的,可惜没有源码
WebBrowser1.Navigate Text1.Text
WebBrowser1.Visible = True
End SubPrivate Sub Form_Load()
Dim h As Long, aClass As String, k As Long
h = GetWindow(hwnd, GW_CHILD)
aClass = Space$(128)
Do While h
k = GetClassName(h, aClass, 128)
If Left$(aClass, k) = "Shell Embedding" Then hw = h: Exit Do
h = GetWindow(h, GW_HWNDNEXT)
Loop WebBrowser1.Navigate ""
origWndProc = SetWindowLong(hw, GWL_WNDPROC, AddressOf AppWndProc)
End SubPrivate Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
SetWindowLong hw, GWL_WNDPROC, origWndProc
End SubPrivate Sub mnuPrint_Click()
MsgBox "Print!"
End SubPrivate Sub Text1_GotFocus()
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
End Sub
但我对api不是很熟悉,上面的程序除了要进行以下声名外,还要怎么做?
Public Declare Function GetWindow Lib "user32" (ByVal hwnd As Long, ByVal wCmd As Long) As LongPublic Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As LongPublic Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
AppWndProc这个程序的内容是什么?