句柄问题!高手请进!100分送上!

kwxx 2002-03-29 08:46:11
使用WebBrowser控件时
调用Hwnd属性时,出现"HWND"的"IWebBrowser2"方法错误
这是怎么回事?
高手赐教!!!
...全文
35 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
kwxx 2002-03-30
  • 打赏
  • 举报
回复
TO:LOU_DF(ldf)
有效吗?
WindowFromPoint是API
还是VB自带函语句?
lou_df 2002-03-30
  • 打赏
  • 举报
回复
x = Screen.Width / Screen.TwipsPerPixelX \ 2
y = (Screen.Height / Screen.TwipsPerPixelX) \ 2
SetCursorPos x, y '把鼠标移到WEBBROWSER上
GetCursorPos point
hwnd = WindowFromPoint(point.x, point.y) '获得鼠标下面的窗体的句柄
TechnoFantasy 2002-03-30
  • 打赏
  • 举报
回复
你说的是IE内的工具栏这样控件还是页面里面的控件,如果是后者可能无法获得,如果是前者,理论上获得窗口局柄就可以获得里面的控件的局柄,不过我没有试过在IE中的编程
kwxx 2002-03-30
  • 打赏
  • 举报
回复
可以取得窗口内的一个控件的HWND是吗??

谢谢了
TechnoFantasy 2002-03-30
  • 打赏
  • 举报
回复
sonicdater(发呆呆(我答问题*不吵架*因为我呆))
已经提供解决方法了:

Visual Basic developers can use the following code, which takes the HWND of the hosting form and examines all its children until it finds the window with a window class of "Shell Embedding". This is the topmost window of the WebBrowser control.

CAUTION: The Internet Explorer window class name may change in future browser versions. Use this workaround with care.
Option Explicit

Public Const GW_HWNDNEXT = 2
Public Const GW_CHILD = 5
Public Declare Function GetWindow Lib "user32" (ByVal hwnd As Long, ByVal wCmd As Long) As Long
Public Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long

Public Function GetBrowserWindow(hwndBrowserContainer As Long) As Long
Dim RetVal As Long
Dim Result As Long
Dim hwndChild, hwndPeer As Long
Dim ClassString As String * 256


hwndPeer = GetWindow(hwndBrowserContainer, GW_CHILD)
While (Result = 0) And (hwndPeer <> 0)
hwndPeer = GetWindow(hwndPeer, GW_HWNDNEXT)
RetVal = GetClassName(hwndPeer, ClassString, 256)
If hwndPeer <> 0 Then
RetVal = GetClassName(hwndPeer, ClassString, 256)
If Left$(ClassString, InStr(ClassString, Chr$(0)) - 1) = "Shell Embedding" Then
Result = 1
End If
End If
Wend

GetBrowserWindow = hwndChild
End Function
Please note that neither of these techniques are needed when you automate Internet Explorer. For automation, C++ and Visual Basic users can both use the HWND property of the InternetExplorer object.
kwxx 2002-03-30
  • 打赏
  • 举报
回复
那怎么办???

我需要HWND属性啊!!!
sonicdater 2002-03-30
  • 打赏
  • 举报
回复
WindowFromPoint
SetCursorPos
GetCursorPos
都是 win32 api .

你还是 照着 微软的 方法做吧
TechnoFantasy 2002-03-29
  • 打赏
  • 举报
回复
HWND是InternetExplorer对象属性
sonicdater 2002-03-29
  • 打赏
  • 举报
回复
Webbrowser Control 没有 Hwnd 属性 !!!
请看:
http://msdn.microsoft.com/library/default.asp?url=/workshop/browser/webbrowser/reflist_vb.asp

另外, MSDN 上已有 这个问题的说明:

PRB: Obtaining the HWND for the WebBrowser Control (Q244310)
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q244310
TechnoFantasy 2002-03-29
  • 打赏
  • 举报
回复
你的IE版本是什么
happybeyond 2002-03-29
  • 打赏
  • 举报
回复
关注!
kwxx 2002-03-29
  • 打赏
  • 举报
回复
有什么代码???

一有关于它句柄的代码无论什么就出错啊!!!

例如a=WebBrowser1.Hwnd就OVER
sonicdater 2002-03-29
  • 打赏
  • 举报
回复
能把 代码帖出来吗?
zyl910 2002-03-29
  • 打赏
  • 举报
回复
关注!
访问真八字排盘系统介绍: 1、八字排盘 八字排盘是将年月日时按照天干地支的形式进行排列,一个时间单位代表了一个柱。八字由年柱、月柱、日柱和时柱共四个柱组成,也被称为四柱八字。八字学中基于中国阴阳五行、天干地支与刑冲克害、以及民间盲派的神煞论等方式,进一步预测爱情顺遂、工作高低、姻缘好坏、财富高低、学业成就、身体健康等事的学问。 八字排盘由以下元素组合:年月日时四柱、大运干支、胎元 、流年干支、十神、地势、神煞等。生辰八字不只是把干支历计算出来,而还要遵守月令、节令的强弱,时辰的阴阳变化进行校正。排盘分析,就是根据出生者的性别、天干地支的阴阳五行关系、进一步推算出来的一套方法论,给预测者做人生吉凶的参考数据,在未来事业、财运、婚姻、家庭等问题时,能做出风险较低的决策。 八字排盘怎么看 八字排盘由年、月、日、时四柱组成,每柱包含一个天干和一个地支,共八个字。年柱代表出生的年份,月柱代表出生的月份,日柱代表出生的日期,时柱则代表出生的时辰。每个柱的干支组合都会对个人的命运产生影响。天干地支旁边标注的正财、偏财、偏印、正印、比肩、劫财、食神、伤官、正官、七杀等,称为十神。 2、八字排盘软件介绍 我们是腾讯云市场金牌合作伙伴,广州正规软件开发公司,开发的八字排盘系统数据最全面精准,我们八字排盘采用最精确的排盘程序,而且运用“真太阳时”,进行更精确的时间划分。大家都知道我们使用的北京时间,是统一规定的标准时间。而八字排盘需要相对于太阳方位的天文时间,即平太阳时。我们国家地大物博,北京时间19时,哈尔滨已经夜幕降临,而新疆却还是太阳高挂,这时哈尔滨的天文时间可能在20:00以后,而新疆的天文时间可能在16时以前。北京时间是东经120度经线的平太阳时,如果您出生地的经度与北京时间所处的经度差异较大,或者处于单数时间点的前后,比如6点差一刻,8点,10点15分等

743

社区成员

发帖
与我相关
我的任务
社区描述
VB 版八卦、闲侃,联络感情地盘,禁广告帖、作业帖
社区管理员
  • 非技术类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧