설명 :#Ruby Tk 전달 메소드/함수를 인수로 사용합니다.
메소드 또는 함수를 인수로 전달할 수있는 방법을 알고 싶습니다. 예를 들어
, 파이썬에있을 것입니다 : 내가 할 경우이 예에서
from MyFile import MyClass MyClass().my_method_click(function) # without parentheses
, 파이썬 당신이, 괄호없이 함수 또는 메소드를 보내
from MyFile import MyClass
MyClass().my_method_click(function()) # with parentheses
함수를 호출하지만 보내지 않습니다.
당신이 메서드 또는 함수를 호출 루비, , 당신은 또는 괄호없이 그것을 할 수 있습니다.나는 이것이 루비에서 할 경우 :
require_relative "MyClass"
MyClass.new.my_method_click(function) # without parentheses
그냥없이 호출을 보낼 수 있습니다.
물론 버튼을 클릭하면이 작업을 실행합니다.
루비에서 어떻게 할 수 있습니까 ??
고마워요!
귀하의 질문에 명확하지 않습니다. 당신은 방법과 기능이 상호 교환 가능한 것처럼 이야기하지만, 방법과 기능은 매우 다른 것들입니다. 메소드는 객체에 속하지만 객체 자체는 아닙니다. 함수 *는 * 객체입니다. 루비는 "함수"라는 개념을 가지고 있지 않습니다. * 정확하게 * 당신이 의미하는 것에 따라, "함수"의 역할은'proc','call'에 응답하는 객체,'to_proc'에 응답하는 객체, 또는 객체 'call' * 및 *'to_proc'에 응답합니다. –