저는 Qt의 초보자입니다. 알고 싶은데, 어떻게하면 창에있는 버튼이 클릭되는지 확인하는 이벤트를 만들 수 있습니까? 창에는 하나의 푸시 버튼이 있습니다.버튼을 클릭했을 때 확인 qt
내 질문에 대해 간단하고 정확한 예를 찾을 수 없으므로 여기에서 묻습니다. 나는 먼저 구글을했다.
고맙습니다.
저는 Qt의 초보자입니다. 알고 싶은데, 어떻게하면 창에있는 버튼이 클릭되는지 확인하는 이벤트를 만들 수 있습니까? 창에는 하나의 푸시 버튼이 있습니다.버튼을 클릭했을 때 확인 qt
내 질문에 대해 간단하고 정확한 예를 찾을 수 없으므로 여기에서 묻습니다. 나는 먼저 구글을했다.
고맙습니다.
Qt는 신호 및 슬롯 패러다임을 사용합니다. 버튼이 클릭되었는지 확인하지 않습니다. 버튼을 클릭하면 신호를 내 보냅니다. 자신의 기능을 해당 신호에 연결할 수 있습니다. 따라서 해당 버튼을 클릭 할 때마다 신호가 방출되고 연결된 모든 기능이 트리거됩니다.
속성 및 메타 데이터와 함께 Qt의 핵심 개념 인 signals and slots을 확인하십시오. 버튼으로 무언가의 경우 거의 필요가 있지만 QWidget
가 파생 것을
주, 버튼은 마우스 이벤트에 의해 트리거하고 당신이 원하는 경우에 당신이 그들을 무시할 수있는 다음과 같은 방법을 함께 제공 :
버튼을 누를 경우virtual void mouseDoubleClickEvent(QMouseEvent * event)
virtual void mouseMoveEvent(QMouseEvent * event)
virtual void mousePressEvent(QMouseEvent * event)
virtual void mouseReleaseEvent(QMouseEvent * event)
class MyClass : public QWidget
{
public:
MyClass()
{
QPushButton *pButton = new QPushButton(this);
QObject::connect(pButton, &QPushButton::clicked, this, &MyClass::onButtonClicked);
}
public slots:
void onButtonClicked() {qDebug() << "Button clicked";};
};
onButtonClicked
가 호출됩니다.
자세한 내용은 signals & slots 및 QPushButton signals을 참조하십시오.