1. Tải bản cài đặt AutoIT mới nhất

    Chào Khách. Nếu bạn mới tham gia và chưa cài đặt AutoIT.
    Vui lòng vào topic trên để tải bản AutoIT mới nhất nhé
    Dismiss Notice
  2. Quy định và nội quy

    Chào Khách. Vui lòng đọc kỹ nội quy và quy định của diễn đàn
    Để tránh bị ban một cách đáng tiếc nhé!
    Dismiss Notice
  3. Hướng dẫn chèn mã AutoIT trong diễn đàn

    Chào Khách. Vui lòng xem qua bài viết này
    Để biết cách chèn mã AutoIT trong diễn đàn bạn nhé :)
    Dismiss Notice

[Solved] Click để chọn tất cả văn bản trong Edit Control

Thảo luận trong 'Thảo luận chung - Hỏi đáp' bắt đầu bởi SonNguyen, 18/12/15.

Trạng thái chủ đề:
Không mở trả lời sau này.
  1. SonNguyen

    SonNguyen Thành viên mới
    • 3/6

    Tham gia ngày:
    25/9/15
    Bài viết:
    9
    Đã được thích:
    21
    Anh em giúp mình với.
    Edit Control được tạo bởi GUICtrlCreateEdit nhé
     
    kamsamita1 and Phan Dong like this.
  2. Huân Hoàng

    Huân Hoàng Administrator Thành viên BQT Administrator Super Moderator
    • 93/113

    Tham gia ngày:
    29/9/15
    Bài viết:
    642
    Đã được thích:
    1,182
    Câu trả lời tốt nhất
    Dùng Ctrl + A để Select All :
    Mã (AutoIt):
    $GUI = GUICreate("GUI", 310, 210)
    $Edit1 = GUICtrlCreateEdit("", 2, 2, 300, 100)
    $Edit2 = GUICtrlCreateEdit("", 2, 104, 300, 100)
    $Ctrl_A = GUICtrlCreateDummy()
    GUISetState()

    Local $DefButton[1][2] = [["^a", $Ctrl_A]]
    GUISetAccelerators($DefButton)

    While Sleep(20)
        Switch GUIGetMsg()
            Case $Ctrl_A
                $hwnd = ControlGetHandle("", "", "[CLASSNN:" & ControlGetFocus("") & "]")
                GUICtrlSendMsg(DllCall("user32.dll", "int", "GetDlgCtrlID", "hwnd", $hwnd)[0], 0xB1, 0, -1)
            Case -3
                Exit
        EndSwitch
    WEnd
     

    Dùng Button để Select All :
    Mã (AutoIt):
    $GUI = GUICreate("GUI", 310, 170)
    $Edit = GUICtrlCreateEdit("", 2, 2, 300, 100)
    $Button =GUICtrlCreateButton("Select All", 2, 110, 300, 40)
    GUISetState()

    While Sleep(20)
        Switch GUIGetMsg()
            Case $Button
                GUICtrlSetState($Edit, 256)
                GUICtrlSendMsg($Edit, 0xB1, 0, -1)
            Case -3
                Exit
        EndSwitch
    WEnd
     
     
    kamsamita1, Phan Dong and SonNguyen like this.
  3. SonNguyen

    SonNguyen Thành viên mới
    • 3/6

    Tham gia ngày:
    25/9/15
    Bài viết:
    9
    Đã được thích:
    21
    Ý mình là Click vào control nó tự select all luôn ấy. Hoặc là cách nào để xác định người dùng vừa click vào phần edit control. Chứ hotkey với button mình vẫn đang dùng rồi. :D

    Tiện cho mình hỏi luôn set style như thế nào để edit nó tự ngắn dòng mà vẫn có thể Enter xuống dòng được. Mình thử hết mấy style trong help mà không được.
     
    kamsamita1 and Phan Dong like this.
  4. Huân Hoàng

    Huân Hoàng Administrator Thành viên BQT Administrator Super Moderator
    • 93/113

    Tham gia ngày:
    29/9/15
    Bài viết:
    642
    Đã được thích:
    1,182
    thêm vào switch GUIgetMsg()

    Case -7 ;left_click
    If ControlGetFocus($GUI) = 'Edit1' Then GUICtrlSendMsg($Edit, 0xB1, 0, -1)

    có mấy code đó làm tới làm lui thôi mà ;))

    Câu hỏi thứ 2 của thým đọc hiểu chết liền :v
     
    kamsamita1 and Phan Dong like this.
  5. SonNguyen

    SonNguyen Thành viên mới
    • 3/6

    Tham gia ngày:
    25/9/15
    Bài viết:
    9
    Đã được thích:
    21
    Tức là viết 1 dòng dài nó sẽ không ngắt dòng khi kịch đầu bên phải.
    Mình thêm cái Multiline vào nó ngắt dòng nhưng lại không Enter để xuống dòng trong edit được.
     
    kamsamita1 and Phan Dong like this.
  6. Huân Hoàng

    Huân Hoàng Administrator Thành viên BQT Administrator Super Moderator
    • 93/113

    Tham gia ngày:
    29/9/15
    Bài viết:
    642
    Đã được thích:
    1,182
    Thým không Enter xuống hàng được chắc là do style chưa thêm $ES_WANTRETURN = 0X1000. Đặt style của Edit là 0x201040 :p

    Mã (AutoIt):
    GUICreate("", 220, 150)
    $Edit = GUICtrlCreateEdit("", 8, 8, 200, 130, 0x201040)
    GUISetState()

    While GUIGetMsg() <> -3
    WEnd
     
    kamsamita1 and Phan Dong like this.
Trạng thái chủ đề:
Không mở trả lời sau này.

Chia sẻ trang này

Đang tải...