50元人民币 IE影响在GUI上面输入内容寻解决方法
#include <ButtonConstants.au3>#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <ie.au3>
$Form1 = GUICreate("Form1", 633, 454, 192, 114)
$oIE = _IECreateEmbedded()
GUICtrlCreateObj($oIE, 8, 8, 621, 400)
_IENavigate($oIE,"http://tool.admin5.com/dw/")
_IELoadWait($oIE)
$BTN = GUICtrlCreateButton("测试在第二个GUI输入文字", 176, 415, 219, 25)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $BTN
GUI2()
EndSwitch
WEnd
;============================
Func GUI2()
Local $Form_2 = GUICreate("我是第二个GUI", 316, 240, Default, Default,0,0,$Form1)
Local $Label1 = GUICtrlCreateLabel("输入内容:", 16, 16, 64, 17)
Local $BtnName = GUICtrlCreateInput("内容", 80, 16, 200, 21)
Local $Edit1 = GUICtrlCreateEdit("", 80, 50, 200, 89)
Local $Button1 = GUICtrlCreateButton("关闭", 184, 150, 75, 25)
Local $Label1 = GUICtrlCreateLabel("左右方向键,退格键,删除键都不灵了,是什么原因呢?", 8, 180, 300, 17)
GUISetState(@SW_SHOW)
While 1
Local $nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
ExitLoop
Case $Button1
ExitLoop
EndSwitch
WEnd
GUIDelete($Form_2)
EndFunc
点击“测试”按扭,在“第二个GUI”界面的输入框输入内容时,左右方向键,退格键,删除键都不灵了,是什么原因呢?
高手可以解决,请联系QQ:1969196 (隐身) 电话:13549791330 陈 帮顶。。俺试了下。可正常使用。。俺是03系统。。不知道帮助到你了没。。 帮顶。。俺试了下。可正常使用。。俺是03系统。。不知道帮助到你了没。。
xyhqqaa 发表于 2011-8-10 14:10 http://www.autoitx.com/images/common/back.gif
退格键,删除键都正常吗? 完全可正常使用 所以你还是自己去测试下 把。也许是你的系统问题。。祝你好运。 解决了,回来联系我 做什么用的学下 本帖最后由 骗子 于 2011-8-10 17:35 编辑
在XP下测试了一下,的确有楼主所说的问题。个人感觉好像就是因为“http://tool.admin5.com/dw/”把一些键给抢了
想了两个变通的办法:
1、双进程,两个窗口独立的进程,测试没有问题
2、就是先把IE跳转到其他地方,等子窗口接收完内容以后再将IE切换到“http://tool.admin5.com/dw/”
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <EditConstants.au3>
#include <ie.au3>
$Form1 = GUICreate("Form1", 633, 454, 192, 114)
$oIE = _IECreateEmbedded()
GUICtrlCreateObj($oIE, 8, 8, 621, 400)
_IENavigate($oIE, "http://tool.admin5.com/dw/")
_IELoadWait($oIE)
$BTN = GUICtrlCreateButton("测试在第二个GUI输入文字", 176, 415, 219, 25)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $BTN
GUISetState(@SW_HIDE) ;隐藏$Form1
GUI2()
EndSwitch
WEnd
;============================
Func GUI2()
_IENavigate($oIE, "about:blank") ;跳转到空白页
Local $Form_2 = GUICreate("我是第二个GUI", 316, 240, Default, Default,0,0,$Form1)
Local $Label1 = GUICtrlCreateLabel("输入内容:", 16, 16, 64, 17,$ES_NOHIDESEL)
Local $BtnName = GUICtrlCreateInput("内容", 80, 16, 200, 21)
Local $Edit1 = GUICtrlCreateEdit("", 80, 50, 200, 89)
Local $Button1 = GUICtrlCreateButton("关闭", 184, 150, 75, 25)
Local $Label1 = GUICtrlCreateLabel("左右方向键,退格键,删除键都不灵了,是什么原因呢?", 8, 180, 300, 17)
GUISetState(@SW_SHOW)
While 1
Local $nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
ExitLoop
Case $Button1
_IENavigate($oIE, "http://tool.admin5.com/dw/") ;切换回_IENavigate($oIE, "http://tool.admin5.com/dw/")
WinSetState ("Form1","",@SW_SHOW) ;显示$Form1
ExitLoop
EndSwitch
WEnd
GUIDelete($Form_2)
EndFunc ;==>GUI2
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <EditConstants.au3>
#include <ie.au3>
$Form1 = GUICreate("Form1", 633, 454, 192, 114)
$oIE = _IECreateEmbedded()
GUICtrlCreateObj($oIE, 8, 8, 621, 400)
_IENavigate($oIE, "http://tool.admin5.com/dw/")
_IELoadWait($oIE)
$BTN = GUICtrlCreateButton("测试在第二个GUI输入文字", 176, 415, 219, 25)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $BTN
GUISetState(@SW_HIDE) ;隐藏$Form1
GUI2()
EndSwitch
WEnd
;============================
Func GUI2()
_IENavigate($oIE, "about:blank") ;跳转到空白页
Local $Form_2 = GUICreate("我是第二个GUI", 316, 240, Default, Default, 0, 0, $Form1)
Local $Label1 = GUICtrlCreateLabel("输入内容:", 16, 16, 64, 17, $ES_NOHIDESEL)
Local $BtnName = GUICtrlCreateInput("内容", 80, 16, 200, 21)
Local $Edit1 = GUICtrlCreateEdit("", 80, 50, 200, 89)
Local $Button1 = GUICtrlCreateButton("关闭", 184, 150, 75, 25)
Local $Label1 = GUICtrlCreateLabel("左右方向键,退格键,删除键都不灵了,是什么原因呢?", 8, 180, 300, 17)
GUISetState(@SW_SHOW)
While 1
Local $nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
ExitLoop
Case $Button1
_IENavigate($oIE, "http://tool.admin5.com/dw/") ;切换回_IENavigate($oIE, "http://tool.admin5.com/dw/")
WinSetState("Form1", "", @SW_SHOW) ;显示$Form1
ExitLoop
EndSwitch
WEnd
GUIDelete($Form_2)
EndFunc ;==>GUI2
跳转IE的页面,会影响到编辑器中的内容,在实际应用中不可行。 回复 10# chenzhi1210
跳转之前把内容读取出来,等最后需要的时候再放回去不就可以了 这么多人热心帮助,围观了 楼上的风行者帮我解决了!感谢大家的帮助! 已经解决!谢谢大家! 看来没有钱解决不了的问题,呵呵呵
页:
[1]