2012-08-07 4 views
9

QT에서 만든 GUI를 올바르게 닫는 종료 버튼을 만들려고합니다. 나는 다음과 같은 방법으로이 일을 시도했다 :qt에 올바른 종료 버튼을 만드는 방법

Invalid address specified to RtlFreeHeap(003E0000, 0028F950) 

이 사람이 올바른 방향으로 날 포인트 : I 버튼을 누르면

#include <QtGui/QApplication> 
#include "mainwindow.h" 

int main(int argc, char *argv[]) 
{ 
QApplication a(argc, argv); 

int window_width = QApplication::desktop()->width(); 
int window_height = QApplication::desktop()->height(); 

MainWindow w; 

QPushButton * quit_btn = new QPushButton; 
quit_btn->setParent(w.centralWidget()); 
quit_btn->setGeometry(window_width-50,12,32,32); 

QObject::connect(quit_btn,SIGNAL(clicked()),qApp,SLOT(quit())); 

w.resize(window_width,window_height); 
w.show(); 

return a.exec(); 
} 

불행하게도, 디버거는 오류를 준다?

답변

21

버튼의 clicked() 신호를 기본 창의 close() 슬롯에 연결하십시오. 그렇게하면 일들이 제대로 정리됩니다.

관련 문제