Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk menyampaikan hujah kepada arahan butang Tkinter?

Bagaimana untuk menyampaikan hujah kepada arahan butang Tkinter?

Patricia Arquette
Patricia Arquetteasal
2024-12-18 09:32:181007semak imbas

How to Pass Arguments to Tkinter Button Commands?

Melalukan Argumen kepada Perintah Butang dalam Tkinter

Dalam Tkinter, apabila mencipta butang, anda boleh menentukan pilihan arahan untuk menentukan tindakan yang dilaksanakan apabila butang ditekan. Walau bagaimanapun, adalah wajar untuk memberikan hujah kepada perintah ini.

Fungsi Lambda Sebaris

Satu penyelesaian ialah menggunakan lambdas, yang merupakan fungsi tanpa nama. Berikut ialah contoh:

import Tkinter as Tk

win = Tk.Toplevel()
frame = Tk.Frame(master=win).grid(row=1, column=1)

someNumber = 10

# Pass an argument to the action method
button = Tk.Button(master=frame, text='press', command= lambda: action(someNumber))

Dalam kod ini, fungsi lambda menangkap nilai someNumber dan menyerahkannya sebagai hujah kepada kaedah tindakan apabila butang ditekan.

Kaedah Pembungkus

Pendekatan lain ialah mencipta kaedah pembungkus yang menerima bilangan hujah yang sewenang-wenangnya dan kemudian memanggil kaedah tindakan asal dengan hujah yang sesuai:

import Tkinter as Tk

def action_wrapper(*args):
    action(*args)

someNumber = 10

button = Tk.Button(master=frame, text='press', command= action_wrapper(someNumber))

Atas ialah kandungan terperinci Bagaimana untuk menyampaikan hujah kepada arahan butang Tkinter?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn