Sign in to follow this  
Followers 0
Chimaera

Input Box Issues

3 posts in this topic

Ok i have a couple of Input boxes which i need to put Customer Name in one and Quote Number in the other.

I create them like this

$hInput1 = GUICtrlCreateInput(" Customer Name ", 30, 125, 133, 25)
GUICtrlSetFont(-1, 10.5, 400, 0, "Tahoma")

Now i would like it so that the text is greyed out for this text but not for what the person types, So Customer Name would grey / Jenkins would be black and when the person clicks on the box it wipes the Customer name text away ready for typing.

Im assuming its possible but i cant see how ?

The only way i have managed to read it is by adding it in the while / wend under the next button to be pressed so i can add the details from it into a variable, when it was in the while wend on its on it was constantly being read.

Any thoughts plz?

Share this post


Link to post
Share on other sites



Chimaera,

What you want is called a CueBanner and you do it ike this:

#include <GUIConstantsEX.au3>
#include <EditConstants.au3>
#include <WinAPI.au3>

$hGui = GUICreate("", 500, 300)
GUICtrlCreateLabel("Info", 10, 5)
Local $aInput[6][2] = [[0, "Name"],[0, "Address"],[0, "Home Phone"],[0, "Mobile Phone"],[0, "Password"],[0, "Town"]]
For $i = 0 To UBound($aInput) - 1
    $aInput[$i][0] = GUICtrlCreateInput("", 10, (20 * ($i + 1)), 140, 20)
    GUICtrlSendMsg(-1, $EM_SETCUEBANNER, True, $aInput[$i][1])
Next
GUISetState()
While 1
    $msg = GUIGetMsg()
    If $msg = $GUI_EVENT_CLOSE Then Exit
WEnd

;Does not work for edit controls with $ES_MULTILINE style.
;In XP, the banner disappears when the edit has focus (cursor in edit)
;In Vista/7 the banner can optionally still appear when the edit has focus (cursor in edit)
;(third parameter = True/False)

All clear? :)

M23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites

#3 ·  Posted (edited)

No sorry, i cant tie them together like as i cant do other things with them, well its prob possible but im trying to keep it simple.

I need just one box and ill make it twice to do both

I tried hacking about but ended crashing autoIt :)

Local $aInput = " Customer Name "
For $i = 0 To UBound($aInput)
$aInput = GUICtrlCreateInput("", 10, 20, 140, 30)
GUICtrlSendMsg(-1, $EM_SETCUEBANNER, True, $aInput)
Next

No wait..

I got it i think

$hGui = GUICreate("", 500, 300)

Local $aInput1 = " Customer Name "
$aInput = GUICtrlCreateInput("", 10, 20, 140, 20)
GUICtrlSendMsg(-1, $EM_SETCUEBANNER, True, $aInput1)

GUISetState()
While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then Exit
WEnd
Edited by Chimaera

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  
Followers 0