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

AutoHotKey [Hỏi đáp] Chọn random ảnh trong một Folder

Thảo luận trong 'AutoHotkey' bắt đầu bởi onedayv10, 25/3/20.

  1. onedayv10

    onedayv10 Thành viên mới
    • 1/6

    Tham gia ngày:
    25/3/20
    Bài viết:
    5
    Đã được thích:
    0
    Mình không rành về autohotkey, bác nào có thể giúp đỡ em với ạ.
    Em thường phải chọn radom 30 ảnh trong một thư mục chứa 1000 ảnh, công việc lặp đi lặp lại và việc chọn radom thủ công mất khá nhiều thời gian.
    Vậy bác nào có thể có crips radom ảnh trong một foder không ạ.
    Em cảm ơn và sẽ hậu tạ 200k cho bác nào viết code nhỏ bé đó cho e ạ.
    E cảm ơn.
     
  2. #Rainy# Hoàng Vũ IT

    #Rainy# Hoàng Vũ IT Hoàng Vũ IT Moderator
    • 43/45

    Tham gia ngày:
    21/11/16
    Bài viết:
    404
    Đã được thích:
    122
    Chọn ra làm gì nhỉ. Ngôn ngữ khác được không hay bắt buộc phải AHK, inbox phát xem nào bác.
     
    Chỉnh sửa cuối: 26/3/20
  3. #Rainy# Hoàng Vũ IT

    #Rainy# Hoàng Vũ IT Hoàng Vũ IT Moderator
    • 43/45

    Tham gia ngày:
    21/11/16
    Bài viết:
    404
    Đã được thích:
    122
    Sau 1 hồi loay hoay với AHK, đã có được thành phẩm. tuy nhiên có vẻ hơi ngáo tí. =))

    Mã (Autohotkey):

    GetFiles := GetFilesInFolders("D:\Code\AHK") ;  Lấy tất cả các file nằm trong thư mực "D:\Code\AHK"
    Arrays := GetArrayImage(GetFiles, 40) ; Lấy random 40 phần tử nằm trong mảng GetFiles


    for i, v in Arrays
        MsgBox % "File #" i ":`n`n" Arrays[i]


    GetFilesInFolders(dir)
    {
        static FileArr := []
            loop, files, % dir "\*.*", FR
                FileArr.Push(A_LoopFileName)
            return FileArr
        throw Exception("Folder does not exist!", -1)
    }

    GetArrayImage(Files, _number)
    {
        FileArr := []
         ;~ rd := 0
        Loop, % _number{
            Random, rd , 1, % Files.Length()
            FileArr.Push(Files[rd])
        }
        return FileArr
    }

    [/i]
     
  4. onedayv10

    onedayv10 Thành viên mới
    • 1/6

    Tham gia ngày:
    25/3/20
    Bài viết:
    5
    Đã được thích:
    0
    Bác ơi e dùng autohotkey thôi bác ạ. Mình chọn để làm linh tinh thôi
     
  5. onedayv10

    onedayv10 Thành viên mới
    • 1/6

    Tham gia ngày:
    25/3/20
    Bài viết:
    5
    Đã được thích:
    0

    Hình như nó ngáo ngáo thật bác ạ, bác xem thử fix lại giùm e được không, Ví dụ em đang ở trong thư mục đó rồi, e bấm nút F3 cái, sẽ tự radom 30 ảnh luôn
     
  6. #Rainy# Hoàng Vũ IT

    #Rainy# Hoàng Vũ IT Hoàng Vũ IT Moderator
    • 43/45

    Tham gia ngày:
    21/11/16
    Bài viết:
    404
    Đã được thích:
    122
    Nghĩa là sao ? Bạn hiểu code trên viết gì không ? Mình không hiểu ý bạn nói nên k có code đúng ý bạn.
    Chuyện bạn vào sẵn thư mục ấn F5 copy bất kì 30 file nó rắc rối. muốn nhanh thì cứ chỉ định thư mục. copy 30 file đó ra 1 thư mục khác cũng ez
     
    Chỉnh sửa cuối: 26/3/20
  7. onedayv10

    onedayv10 Thành viên mới
    • 1/6

    Tham gia ngày:
    25/3/20
    Bài viết:
    5
    Đã được thích:
    0
    Ví dụ mình upload ảnh lên facebook á bạn, mình muốn 1 lần select radom 30 ảnh trong cái file đó. Chứ k phải coppy file làm gì cả bác ạ.
     
  8. #Rainy# Hoàng Vũ IT

    #Rainy# Hoàng Vũ IT Hoàng Vũ IT Moderator
    • 43/45

    Tham gia ngày:
    21/11/16
    Bài viết:
    404
    Đã được thích:
    122
    Đơn giản copy file ra 1 thư mục r chọn all file.
    2 copy thẳng tên dán vào cái OpenDialog
     
  9. onedayv10

    onedayv10 Thành viên mới
    • 1/6

    Tham gia ngày:
    25/3/20
    Bài viết:
    5
    Đã được thích:
    0
    Có cách nào tự động hơn k bác, như vậy thủ công quá
     
  10. #Rainy# Hoàng Vũ IT

    #Rainy# Hoàng Vũ IT Hoàng Vũ IT Moderator
    • 43/45

    Tham gia ngày:
    21/11/16
    Bài viết:
    404
    Đã được thích:
    122
    Cái đó phải biết bác tự động theo phương thức nào.
    nếu như chỉ controlcliick, send thì cách trên là được rồi. nếu selenium thì có thể send input trực tiếp. tuỳ vào cách tương tác sẽ có cách tối ưu.
     

Chia sẻ trang này

Đang tải...