Jump to content

Unable to use backspace in controls with embedded IE ActiveX

Recommended Posts



Sorry for the janky title, I really don't know how to describe this issue.


Basically, when I focus an embedded IE window in my first created GUI I cannot use backspace to erase content in Gui Inputs boxes, instead the backspace is sent to the OIE control.

I could not find anyone with a similar problem, so if there is already an solution, please reefer me :)


Here is a script that will reproduce the problem.


Opt("GUIOnEventMode", 1)
#include <IE.au3>
#include <GUIConstantsEx.au3>

SplashTextOn("Please wait", "Please wait for setup", 200, 50)
Global $oIE = _IECreateEmbedded()
Global $hGUI = GUICreate("", 800, 600)
; Create controls
Global $iMenu = GUICtrlCreateMenu("Test")
Global $iOpenNewGui = GUICtrlCreateMenuItem("Open new gui", $iMenu)
Global $iObj = GUICtrlCreateObj($oIE, 0, 0, 800, 600)

; Show gui

; Navigate to test
_IENavigate($oIE, "https://pastebin.com/AL8kXcNB")

; Go to inputarea
Local $oTextarea = _IEGetObjById($oIE, "paste_code")
_IEAction($oTextarea, "focus")

MsgBox(0,"How to reproduce ", "1. Open Test -> Open new gui" & @LF & "2. Start typing" & @LF & "3. Start using backspace")
; Bind events
GUICtrlSetOnEvent($iOpenNewGui, Callback_OpenNewGui)
GUISetOnEvent($GUI_EVENT_CLOSE, "_exit")

while IsHWnd($hGUI)


Func _Exit()

Func Callback_OpenNewGui()
    Local $hGUI = GUICreate("", 150, 150)
    ; Create controls
    GUICtrlCreateInput("",25, 10, 100)
    ; Bind events
    GUISetOnEvent($GUI_EVENT_CLOSE, "_exit")
    ;Show gui


Any ideas?

Edited by tarretarretarre

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.