파이썬으로 간단한 UDP 전송 GUI 프로그램
개요
UDP 패킷을 전송하는 프로그램을 GUI로 만들고 싶습니다.
GUI를 구축하려면 Tkinter를 사용합니다.
환경
GUI
아래 이미지 같은 느낌으로
Send만은 버튼으로 그 외는 텍스트 박스
텍스트 상자 구현에는 한 줄만 입력할 수 있는 tk.Entry 사용
출처
udp_send_gui.py
# -*- coding:utf-8 -*-
import time
import socket
import tkinter as tk
def udp_send():
msg = DataBox.get()
# 送るメッセージ
client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
delay_time = DelayBox.get()
for i in range(0, int(NumBox.get())):
client.sendto(msg.encode(), (IpBox.get(), int(PortBox.get())))
time.sleep(float(delay_time))
# UDP送信関数
root = tk.Tk() # ウィンドウ作成
root.title("UDP Packet Generator") # ウィンドウタイトル
root.geometry("640x480") # ウィンドウサイズ
Ip = tk.Label(root, text="IP:")
Port = tk.Label(root, text="Port:")
Delay = tk.Label(root, text="Delay:")
Data = tk.Label(root, text="Data:")
Num = tk.Label(root, text="Num:")
IpBox = tk.Entry(font=("Consolas", "30"))
PortBox = tk.Entry(font=("Consolas", "30"))
DelayBox = tk.Entry(font=("Consolas", "30"))
DataBox = tk.Entry(font=("Consolas", "30"))
NumBox = tk.Entry(font=("Consolas", "30"))
IpBox.insert(tk.END, "192.168.")
PortBox.insert(tk.END, "9998")
DelayBox.insert(tk.END, "0.1")
NumBox.insert(tk.END, "1")
# 部品の作成
Ip.place(height=60, y=30)
Port.place(height=60, y=150)
Delay.place(height=60, y=270)
Data.place(height=60, y=390)
Num.place(height=60, x=440, y=390)
IpBox.place(height=60, width=360, x=60, y=30)
PortBox.place(height=60, width=360, x=60, y=150)
DelayBox.place(height=60, width=360, x=60, y=270)
DataBox.place(height=60, width=360, x=60, y=390)
NumBox.place(height=60, width=120, x=500, y=390)
# 部品の配置
Send = tk.Button(root, text="Send!")
Send["command"] = udp_send
Send.place(height=300, width=185, x=440, y=30)
# 送信ボタン
root.mainloop()
결과
요약
쉽게 GUI를 만들 수 있는 Tkinter
Reference
이 문제에 관하여(파이썬으로 간단한 UDP 전송 GUI 프로그램), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/0uts1de/items/fff814b12ed9b3f9fcaa텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)