auto 发表于 2011-8-6 20:42:57

请教AU3内嵌网页,如何获取编辑框正在编辑的内容?

例如,内嵌BBS论坛,在回复帖子的编辑打上内容,在未发送之前,如何获取编辑框内的内容

wsfda 发表于 2011-8-7 10:46:24

先帮顶一下
在你刚刚打入文字进去,网页源代码里面是没有的,
倒不如直接提交进去好了,不知道楼主自己刚刚编辑好的内容,为何还要获取呢

auto 发表于 2011-8-7 16:27:26

回复 2# wsfda


    因为调用一个网页的网页的富文本编辑器,需要获取编辑器的内容。这个内容不是提前知道的

wsfda 发表于 2011-8-7 18:20:07

帖个源码和那个网页地址出来,也许有高手有办法
帮顶.....

www378660084 发表于 2011-8-8 10:37:32

不是有_ie的函数么,直接用呗~~

wsfda 发表于 2011-8-8 11:18:18

回复 5# www378660084


    他要刚刚输入的内容,没有提交的,也不是原来有的,如何获取,使用哪个函数呢?
希望楼上指教...

www378660084 发表于 2011-8-8 12:54:10

可以的哦,不提交也是一样的,只要在输入框里就行的
_IEFormElementGetValue ( ByRef $o_object )

auto 发表于 2011-8-8 13:46:00

回复 7# www378660084


    试过用_IEFormElementGetValue ,获不到
麻烦给一个论坛的例子的就 www.autoitx.com,发贴输入编辑框的例子

wsfda 发表于 2011-8-8 15:08:11

本帖最后由 wsfda 于 2011-8-8 15:10 编辑

测试有效哦,哈哈,谢谢www提醒
楼主请做如下测试
#include <IE.au3>
$oIE = _IE_Example ("form")
$oForm = _IEFormGetObjByName ($oIE, "ExampleForm")
$oText = _IEFormElementGetObjByName ($oForm, "textExample")
$IEAu3Version = _IE_VersionInfo ()
_IEFormElementSetValue ($oText, $IEAu3Version);把这行删除,下面加个sleep(5000)你手动输入,下面也一样可以获取到内容
MsgBox(0, "Form Element Value", _IEFormElementGetValue ($oText))

你自己再改改吧

auto 发表于 2011-8-8 19:58:15

回复 9# wsfda


    这个我在本地试了也可以
但是换这个就不可以,难道写错了#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <IE.au3>

Global $oIE = _IECreateEmbedded()
GUICreate("Embedded Web control Test", 820, 580, _
                0, 0, _
                $WS_OVERLAPPEDWINDOW + $WS_VISIBLE + $WS_CLIPSIBLINGS + $WS_CLIPCHILDREN)
Global $GUIActiveX = GUICtrlCreateObj($oIE, 0, 0, 800, 480)

Global $test = GUICtrlCreateButton('test', 30, 500, 60, 20)
GUISetState()



_IENavigate($oIE, "http://www.kindsoft.net/ke/examples/demo-01.html")

While 1
        $msg = GUIGetMsg()
        Select
                Case $msg = $GUI_EVENT_CLOSE
                        ExitLoop
                Case $msg = $test

                        Global $myfrom = _IEFormGetObjByName($oIE, "example")
                        Global $oText = _IEFormElementGetObjByName($myfrom, "content1")
                        MsgBox(0, "Form Element Value", _IEFormElementGetValue($oText))
        EndSelect
WEnd

GUIDelete()

Exit

wsfda 发表于 2011-8-8 22:27:56

研究了一下,有点迷糊,把第26行下面加个_IEFormElementSetValue ($oText,"test")
但是下面Msg输出的信息就是test了,郁闷
求高手解答,继续顶上去
页: [1]
查看完整版本: 请教AU3内嵌网页,如何获取编辑框正在编辑的内容?