top of page

สร้าง Pop-up ใน 1 บรรทัด ด้วย pyautogui

ง่ายกว่าเดิมด้วย pop-up พร้อมใช้งาน และปรับแต่งให้สถานการณ์ของคุณ เรียนกับ Ultimate Python


User Input

เป็นข้อมูลที่ผู้ใช้งานเป็นคนใส่ไปยังตัวโปรแกรมที่ทำงานด้วย ซึ่งในการใส่ข้อมูลไปยังโปรแกรมสามารถทำได้หลายวิธี หนึ่งในนั้นคือการใส่ข้อมูลผ่าน pop-up หรือหน้าต่างของโปรแกรมที่เปิดขึ้นมาเพื่อรับค่าต่างๆ จาก user



pyautogui

นอกจากจะใช้ส่งคำสั่งเพื่อควบคุมเมาส์ และคีย์บอร์ดแล้ว ยังมีเครื่องมือที่ช่วยให้เราทำงานกับโปรแกรมต่างๆ ผ่าน GUI ตามชื่อ library ที่ย่อมาจาก Graphical User Interface ซึ่งเครื่องมือที่เราจะใช้คือ pop-up ที่เราจะใช้เพื่อรับค่าจาก user


ติดตั้งโปรแกรม

เช่นเดียวกับ library อื่นๆ pyautogui ต้องทำการติดตั้งก่อนการใช้งานครั้งแรก



In [ ]:
!pip install pyautogui 


นำเข้าเครื่องมือ

ก่อนการใช้งานให้นำเข้าเครื่องมือมาใช้งานผ่าน library คำสั่ง import


In [ ]:
import pyautogui


หน้าต่าง pop-up

การทำงานกับ pyautogui ผ่าน pop-up ใช้เพื่อส่งต่อข้อมูลที่ pop-up เก็บไว้ ซึ่งมีข้อมูลอยู่ 2 อย่าง คือ ข้อมูลที่เก็บไว้ในปุ่ม pop-up หรือ user input ที่รับค่าจาก user โดยตรง


หน้าต่าง alert

คือหน้าต่างที่ส่งต่อข้อมูลเพียงผลลัพธ์เดียวเท่านั้น ดังนั้นการใช้งาน pop-up alert เป็นเหมือนการแจ้งเตือนเท่านั้น การทำงานกับ pop-up ประเภทนี้ไม่มีผลต่อข้อมูลที่ pop up นี้ส่งต่อให้กับคำสั่งอื่นๆ

ตัวอย่าง


In [ ]:
pyautogui.alert()


การปรับแต่ง pop-up

เราสามารถปรับแต่ง parameter ต่างๆ เพื่อปรับการแสดงผล pop-up เช่น ชื่อของ pop-up ข้อความ และข้อมูลที่ส่งต่อจากปุ่มกด parameter ที่อาจใช้ได้เช่น text= รับข้อความต้องการแสดง title= รับชื่อ pop-up ที่ต้องการ button=, buttons= รับข้อมูลที่ใช้ส่งต่อเมื่อกดปุ่ม และใช้เป็นชื่อของปุ่ม

ตัวอย่าง pop-up ที่มีการเปลี่ยนแปลงชื่อ ข้อความ ปุ่ม


In [ ]:
pyautogui.alert(text='click "OK" to initiate Python bot',title='Python bot is working',button='test')


หน้าต่าง confirm

มีผลลัพธ์ของปุ่มนี้ 2 อย่าง คือ ผลลัพธ์ที่เก็บไว้ในปุ่ม OK อีกผลลัพธ์ที่เกิดจากการปิด pop-up หรือการกดปุ่ม cancel

ตัวอย่าง


In [ ]:
pyautogui.confirm()

ตัวอย่าง pop-up ที่มีการเปลี่ยนแปลงชื่อ ข้อความ ปุ่ม



In [ ]:
pyautogui.confirm(text='"subscribe รับเงิน 10 ล้าน!"',title='Ultimate Python',buttons=('subscribe','subscribe'))


หน้าต่าง prompt

เป็นหน้าต่างที่ใช้รับค่าจาก user โดยการพิมพ์เป็นข้อความ

ตัวอย่าง


In [ ]:
pyautogui.prompt()

ตัวอย่าง pop-up ที่มีการเปลี่ยนแปลงชื่อ ข้อความ


In [ ]:
pyautogui.prompt(text='Please input your data then click "OK"',title='Python bot is working')


หน้าต่าง password

ใช้เพื่อรับ user input ที่มีการ mask หรือการซ่อนข้อมูลที่ user กรอก ซึ่งมีลักษณะคล้ายกับหน้าต่าง prompt

ตัวอย่าง


In [ ]:
pyautogui.password()

ตัวอย่าง pop-up ที่มีการเปลี่ยนแปลงชื่อ ข้อความ


In [ ]:
password = pyautogui.password(text='Please input your password then click "OK"',title='Python bot is working')


การนำข้อมูลจาก pop-up ไปใช้

การใช้ข้อมูลจากปุ่ม pop-up เพื่อใช้กำหนดกรณีในการทำงาน

การใช้ผลลัพธ์เพื่อตั้งเงื่อนไข


In [ ]:
result = pyautogui.confirm()


In [ ]:
if result == 'OK':print("We get OK. Let's run")else:print("User is not OK. Don't run the script!")

การนำข้อมูลไปใช้ต่อ


In [ ]:
result = pyautogui.prompt()


In [ ]:
print(result)

ข้อมูลที่ได้เป็น string



In [ ]:
result = pyautogui.prompt()


In [ ]:
int(result)

เสร็จสิ้นการสร้าง Pop-up รับค่าจาก User



48 views0 comments
bottom of page