Jump to content
Sign in to follow this  
John117

Clear an input box on selection?

Recommended Posts

John117

I have the following code and would like the input box to clear each time it is selected . . .

Can Anyone help with this?

CODE
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****

#AutoIt3Wrapper_icon=D:\Program Files\AutoIt3\Icons\iVista_Pack\ICO\Programs\MSN Messenger.ico

#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****

#include <GuiConstants.au3>

; make sure net send is running

RunWait("net start messenger","",@SW_HIDE)

; GUI

GuiCreate("My Messenger", 250, 400)

GuiSetIcon(@SystemDir & "\mspaint.exe", 0)

; MENU

GuiCtrlCreateMenu("Menu&One")

GuiCtrlCreateMenu("Menu&Two")

GuiCtrlCreateMenu("MenuTh&ree")

GuiCtrlCreateMenu("Menu&Four")

GUICtrlCreateLabel("My Messenger", 90, 10)

; INPUT

$input = GuiCtrlCreateInput("Type Message Here", 10, 30, 230, 60)

Dim $buttons[8]; <- make array to store buttons. In this way you can easily add as many buttons as you want without having to create functions for it

$buttons[0] = GuiCtrlCreateButton("HATCHEDA", 10, 100, 100, 30)

$buttons[1] = GuiCtrlCreateButton("SCHNEINI", 140, 100, 100, 30)

$buttons[2] = GuiCtrlCreateButton("CROWEBRA", 10, 140, 100, 30)

$buttons[3] = GuiCtrlCreateButton("BENTONRO", 140, 140, 100, 30)

$buttons[4] = GuiCtrlCreateButton("GORDONJ2", 10, 180, 100, 30)

$buttons[5] = GuiCtrlCreateButton("ERFORDTR", 140, 180, 100, 30)

$buttons[6] = GuiCtrlCreateButton("LIVINGJA", 10, 220, 100, 30)

$buttons[7] = GuiCtrlCreateButton("CHARTRTY", 140, 220, 100, 30)

; GUI MESSAGE LOOP

GuiSetState()

While 1

$msg = GuiGetMsg()

If $msg = $GUI_EVENT_CLOSE Then Exit

For $buttonLooper In $buttons; <- /edit: $buttonLooper will contain consecutively all array elements (buttons) in $buttons, so you can do with one function total instead of one function per button

If $msg = $buttonLooper Then

Run("net send "&GUICtrlRead($buttonLooper)&" "&GUICtrlRead($input), "", @SW_HIDE)

;MsgBox(0,"test","message to "&GUICtrlRead($buttonLooper)&": "&GUICtrlRead($input))

EndIf

Next

WEnd

Share this post


Link to post
Share on other sites
eynstyne

add an elseif $msg = $input then Guictrlsetdata($input,"") within the if and endif statements


F@m!ly Guy Fr33k! - Avatar speaks for itself__________________________________________________________________________________________ite quotes... - Is your refrigerator running? If it is, It probably runs like you...very homosexually - Christians don't believe in gravity - Geeze Brian where do you think you are, Payless?- Show me potato Salad!__________________________________________________________________________________________Programs available - Shutdown timer[indent][/indent]

Share this post


Link to post
Share on other sites
DW1

Damn I posted at the same time...

ALSO, Im sure you should look into this and you can get it from there:

ControlGetFocus

His was better :whistle:

Edited by danwilli

Share this post


Link to post
Share on other sites
eynstyne

forget that last suggestion. That was winging it and it won't work.

This might

While 1

$cursorinfo = GuigetCursorInfo($Window)
  if $cursorinfo[4] = $input then
    if $cursorinfo[2] = 1 then
      guictrlsetdata($input,"")
endif
endif

Wend
Edited by eynstyne

F@m!ly Guy Fr33k! - Avatar speaks for itself__________________________________________________________________________________________ite quotes... - Is your refrigerator running? If it is, It probably runs like you...very homosexually - Christians don't believe in gravity - Geeze Brian where do you think you are, Payless?- Show me potato Salad!__________________________________________________________________________________________Programs available - Shutdown timer[indent][/indent]

Share this post


Link to post
Share on other sites
John117

Which last post? yours or the one below?

Also, can you show me getfocus in the code?

I want to simply click the input box and have it clear so that I may type with out deleting first . . .

then be able to click again, and it clear again, before I send another message. But only clear when I click\select\activate the input box

:-) Thanks!

Share this post


Link to post
Share on other sites
DW1

which wont work?

I think mine. Cuase it will just keep clearing if you are in focus, his will work I am pretty sure.

:whistle:

Edited by danwilli

Share this post


Link to post
Share on other sites
eynstyne

forget my last suggestion


F@m!ly Guy Fr33k! - Avatar speaks for itself__________________________________________________________________________________________ite quotes... - Is your refrigerator running? If it is, It probably runs like you...very homosexually - Christians don't believe in gravity - Geeze Brian where do you think you are, Payless?- Show me potato Salad!__________________________________________________________________________________________Programs available - Shutdown timer[indent][/indent]

Share this post


Link to post
Share on other sites
John117

His I tried, I couldn't get it to work. -Perhaps I was adding it incorrectly? Kept giving errors

Share this post


Link to post
Share on other sites
eynstyne

in order for it to work, you must have a variable for GuiCreate

$window = Guicreate()


F@m!ly Guy Fr33k! - Avatar speaks for itself__________________________________________________________________________________________ite quotes... - Is your refrigerator running? If it is, It probably runs like you...very homosexually - Christians don't believe in gravity - Geeze Brian where do you think you are, Payless?- Show me potato Salad!__________________________________________________________________________________________Programs available - Shutdown timer[indent][/indent]

Share this post


Link to post
Share on other sites
John117

Sorry, was talking about trying your first post

now trying this and nothing. What have I added incorrectly?

Please correct so that I can see it ;-)

#include <GuiConstants.au3>

; make sure net send is running

RunWait("net start messenger","",@SW_HIDE)

$window = Guicreate("My Messenger", 250, 400)

; GUI

GuiSetIcon(@SystemDir & "\mspaint.exe", 0)

; MENU

GuiCtrlCreateMenu("Menu&One")

GuiCtrlCreateMenu("Menu&Two")

GuiCtrlCreateMenu("MenuTh&ree")

GuiCtrlCreateMenu("Menu&Four")

GUICtrlCreateLabel("My Messenger", 90, 10)

; INPUT

$input = GuiCtrlCreateInput("Type Message Here", 10, 30, 230, 60)

Dim $buttons[8]; <- make array to store buttons. In this way you can easily add as many buttons as you want without having to create functions for it

$buttons[0] = GuiCtrlCreateButton("HATCHEDA", 10, 100, 100, 30)

$buttons[1] = GuiCtrlCreateButton("SCHNEINI", 140, 100, 100, 30)

$buttons[2] = GuiCtrlCreateButton("CROWEBRA", 10, 140, 100, 30)

$buttons[3] = GuiCtrlCreateButton("BENTONRO", 140, 140, 100, 30)

$buttons[4] = GuiCtrlCreateButton("GORDONJ2", 10, 180, 100, 30)

$buttons[5] = GuiCtrlCreateButton("ERFORDTR", 140, 180, 100, 30)

$buttons[6] = GuiCtrlCreateButton("LIVINGJA", 10, 220, 100, 30)

$buttons[7] = GuiCtrlCreateButton("CHARTRTY", 140, 220, 100, 30)

; GUI MESSAGE LOOP

GuiSetState()

While 1

$msg = GuiGetMsg()

If $msg = $GUI_EVENT_CLOSE Then Exit

For $buttonLooper In $buttons; <- /edit: $buttonLooper will contain consecutively all array elements (buttons) in $buttons, so you can do with one function total instead of one function per button

If $msg = $buttonLooper Then

Run("net send "&GUICtrlRead($buttonLooper)&" "&GUICtrlRead($input), "", @SW_HIDE)

;MsgBox(0,"test","message to "&GUICtrlRead($buttonLooper)&": "&GUICtrlRead($input))

EndIf

Next

WEnd

While 1

$cursorinfo = GuigetCursorInfo($Window)

if $cursorinfo[4] = $input then

if $cursorinfo[2] = 1 then

guictrlsetdata($input,"")

endif

endif

Wend

Share this post


Link to post
Share on other sites
eynstyne

Don't add another while loop! Just take my code and put it in yours 1 line after the while 1 statement


F@m!ly Guy Fr33k! - Avatar speaks for itself__________________________________________________________________________________________ite quotes... - Is your refrigerator running? If it is, It probably runs like you...very homosexually - Christians don't believe in gravity - Geeze Brian where do you think you are, Payless?- Show me potato Salad!__________________________________________________________________________________________Programs available - Shutdown timer[indent][/indent]

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
Sign in to follow this  

×