> 백엔드 개발 > 파이썬 튜토리얼 > Python의 Qt 슬롯에 추가 인수를 어떻게 전달할 수 있습니까?

Python의 Qt 슬롯에 추가 인수를 어떻게 전달할 수 있습니까?

Barbara Streisand
풀어 주다: 2024-12-02 08:58:18
원래의
796명이 탐색했습니다.

How Can I Pass Extra Arguments to Qt Slots in Python?

Qt의 슬롯을 통해 추가 인수 전달

신호를 통해 슬롯에 변수를 전달하는 것은 특정 텍스트나 데이터를 표시하는 데 유용할 수 있습니다. 주어진 Python 코드에서 목표는 searchfile 함수에서 입력 슬롯으로 변수 DiffP를 전달하는 것입니다. 이를 달성하는 두 가지 방법은 다음과 같습니다.

1. Lambda 함수 사용

Lambda 함수를 사용하면 슬롯에 추가 인수를 전달할 수 있습니다.

self.buttonGroup.buttonClicked['int'].connect(lambda i: self.input(i, "text"))
로그인 후 복사

이 람다 함수는 버튼 ID(i)를 첫 번째 인수로 전달하고 입력 슬롯의 두 번째 인수로 추가 인수 "text"를 입력합니다.

2. functools.partial

functools.partial 함수를 사용하여 추가 인수를 슬롯에 바인딩할 수도 있습니다.

from functools import partial

...
self.buttonGroup.buttonClicked['int'].connect(partial(self.input, "text"))
로그인 후 복사

이 접근 방식은 "텍스트" 인수를 입력 슬롯의 첫 번째 매개변수로 지정하여 버튼 ID를 두 번째 매개변수로 전달할 수 있습니다.

두 방법 모두 허용됩니다. 추가 인수를 입력 슬롯에 전달하면 DiffP 변수 또는 기타 원하는 텍스트를 인쇄할 수 있습니다.

위 내용은 Python의 Qt 슬롯에 추가 인수를 어떻게 전달할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿