Jump to content

Need Help With Multiline Edit Box


 Share

Recommended Posts

#include <GUIConstants.au3>

GUICreate("My GUI limit editbox") ; will create a dialog box that when displayed is centered

GUICtrlCreateEdit("", 10,20, 300, 200)
GUICtrlSetLimit(-1,40); to limit the entry to 3 chars
                
GUISetState ()

; Run the GUI until the dialog is closed
While 1
    $msg = GUIGetMsg()
    
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
Wend

8)

NEWHeader1.png

Link to comment
Share on other sites

Requires beta

#include <GUIConstants.au3>
#include <GuiEdit.au3>

Opt('MustDeclareVars', 1)


Dim $myedit, $Status, $msg, $s_rect, $label_rect, $rect_array

GUICreate("Edit Line Length", 392, 254)
$myedit = GUICtrlCreateEdit("AutoIt v3 is a freeware BASIC-like scripting language designed for automating the Windows GUI. It uses a combination of simulated keystrokes, mouse movement and window/control manipulation" & @CRLF, 10, 32, 171, 97, BitOR($ES_AUTOVSCROLL, $WS_VSCROLL, $ES_MULTILINE))
GUICtrlSetLimit($myedit, 1500)
$label_rect = GUICtrlCreateLabel($s_rect, 195, 50, 100, 55, $SS_SUNKEN)

GUISetState()
$rect_array = _GUICtrlEditGetRECT($myedit)
If ($rect_array == $EC_ERR) Then
    MsgBox(0, "Error", "Unable to Get RECT")
ElseIf (IsArray($rect_array)) Then
    $s_rect = "Left:" & $rect_array[1] & @LF & "Top:" & $rect_array[2] & @LF & "Right:" & $rect_array[3] & @LF & "Bottom:" & $rect_array[4]
    GUICtrlSetData($label_rect, $s_rect)
EndIf

Sleep(1000)
_GuiCtrlEditSetRect($myedit, 0, 0, 80, $rect_array[4])
Sleep(1000)
$rect_array = _GUICtrlEditGetRECT($myedit)
If ($rect_array == $EC_ERR) Then
    MsgBox(0, "Error", "Unable to Get RECT")
ElseIf (IsArray($rect_array)) Then
    $s_rect = "Left:" & $rect_array[1] & @LF & "Top:" & $rect_array[2] & @LF & "Right:" & $rect_array[3] & @LF & "Bottom:" & $rect_array[4]
    GUICtrlSetData($label_rect, $s_rect)
EndIf

; Run the GUI until the dialog is closed
While 1
    $msg = GUIGetMsg()
    Select
        Case $msg = $GUI_EVENT_CLOSE
            ExitLoop
    EndSelect
WEnd

;===============================================================================
;
; Description:          _GUICtrlEditSetRECT
; Parameter(s):     $h_edit - controlID
; Requirement:          None
; Return Value(s):  None
; User CallTip:     _GUICtrlEditSetRECT(Byref $h_edit, $left, $top, $right, $bottom) Sets the formatting rectangle of an edit control. (required: <GuiEdit.au3>)
; Author(s):            Gary Frost (custompcs at charter dot net)
; Note(s):
;
;===============================================================================
Func _GuiCtrlEditSetRect(ByRef $h_edit, $left, $top, $right, $bottom)
    Local Const $EM_SETRECT = 0xB3
    Local $struct = DllStructCreate("int;int;int;int")
    DllStructSetData($struct, 1, $left)
    DllStructSetData($struct, 2, $top)
    DllStructSetData($struct, 3, $right + 1)
    DllStructSetData($struct, 4, $bottom + 10)
    If IsHWnd($h_edit) Then
        DllCall("user32.dll", "none", "SendMessage", "hwnd", $h_edit, "int", $EM_SETRECT, "int", 0, "ptr", DllStructGetPtr($struct))
    Else
        GUICtrlSendMsg($h_edit, $EM_SETRECT, 0, DllStructGetPtr($struct))
    EndIf
EndFunc  ;==>_GuiCtrlEditSetRect

SciTE for AutoItDirections for Submitting Standard UDFs

 

Don't argue with an idiot; people watching may not be able to tell the difference.

 

Link to comment
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
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...